*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.bottom-1{bottom:.25rem}.bottom-6{bottom:1.5rem}.left-1\/2{left:50%}.top-1{top:.25rem}.z-10{z-index:10}.z-50{z-index:50}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.w-full{width:100%}.flex-1{flex:1 1 0%}.flex-shrink{flex-shrink:1}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.rounded-full{border-radius:9999px}.border{border-width:1px}.border-white\/60{border-color:#fff9}.bg-emerald-500\/10{background-color:#10b9811a}.bg-white\/85{background-color:#ffffffd9}.p-1\.5{padding:.375rem}.px-4{padding-left:1rem;padding-right:1rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.text-\[10px\]{font-size:10px}.text-xs{font-size:.75rem;line-height:1rem}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.tracking-tight{letter-spacing:-.025em}.line-through{text-decoration-line:line-through}.shadow-\[0_8px_32px_rgba\(0\,0\,0\,0\.08\)\]{--tw-shadow: 0 8px 32px rgba(0,0,0,.08);--tw-shadow-colored: 0 8px 32px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-md{--tw-backdrop-blur: blur(12px);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-filter{backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.active\:scale-90:active{--tw-scale-x: .9;--tw-scale-y: .9;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@media (prefers-color-scheme: dark){.dark\:border-neutral-800\/60{border-color:#26262699}.dark\:bg-emerald-400\/20{background-color:#34d39933}.dark\:bg-neutral-900\/85{background-color:#171717d9}}.auth-gate{position:fixed;inset:0;z-index:999;display:flex;align-items:center;justify-content:center;padding:var(--space-5);background:radial-gradient(circle at 50% 50%,#fbfcf9,#edf2ea);overflow:hidden}.auth-gate__background-glow{position:absolute;inset:0;overflow:hidden;z-index:1;pointer-events:none}.auth-gate__glow-sphere{position:absolute;border-radius:50%;filter:blur(100px);opacity:.5;animation:authGlowFloat 25s infinite ease-in-out alternate}.auth-gate__glow-sphere--1{width:500px;height:500px;background:radial-gradient(circle,#2e95c773,#2e95c700 70%);top:-10%;left:-10%;animation-duration:20s}.auth-gate__glow-sphere--2{width:600px;height:600px;background:radial-gradient(circle,#59a54c59,#59a54c00 70%);bottom:-15%;right:-10%;animation-duration:25s;animation-delay:-5s}.auth-gate__glow-sphere--3{width:450px;height:450px;background:radial-gradient(circle,#f8ecd8b3,#f8ecd800 70%);top:30%;right:20%;animation-duration:22s;animation-delay:-10s}@keyframes authGlowFloat{0%{transform:translate(0) scale(1) rotate(0)}50%{transform:translate(80px,-60px) scale(1.15) rotate(180deg)}to{transform:translate(-40px,50px) scale(.9) rotate(360deg)}}.auth-gate__card{position:relative;z-index:2;width:100%;max-width:400px;background:#ffffffbf;backdrop-filter:blur(28px) saturate(190%);-webkit-backdrop-filter:blur(28px) saturate(190%);border:1px solid rgba(255,255,255,.6);border-radius:28px;box-shadow:0 1px 2px #00000005,0 10px 40px #2f6b280d,0 0 0 1px #fffc inset;padding:var(--space-8) var(--space-6);text-align:center;animation:authCardAppear .8s cubic-bezier(.16,1,.3,1) both}@keyframes authCardAppear{0%{opacity:0;transform:translateY(24px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.auth-gate__logo-wrapper{width:76px;height:76px;margin:0 auto var(--space-4);background:#fff;border-radius:18px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #00000008,0 12px 24px #2f6b280f,0 0 0 1px #00000005;transition:transform .4s cubic-bezier(.175,.885,.32,1.275)}.auth-gate__logo-wrapper:hover{transform:scale(1.06) rotate(3deg)}.auth-gate__logo{display:block;width:48px;height:44px;transition:filter .3s ease}.auth-gate__badge{font-size:11px;font-weight:600;color:var(--color-green-700);letter-spacing:.14em;text-transform:uppercase;margin-bottom:var(--space-2)}.auth-gate__title{font-size:24px;font-weight:800;color:#1a221e;letter-spacing:-.025em;margin-bottom:var(--space-2)}.auth-gate__subtitle{font-size:var(--text-sm);color:#55605a;line-height:1.5;margin-bottom:var(--space-6)}.auth-gate__form{display:flex;flex-direction:column;gap:var(--space-4);text-align:left}.auth-gate__field{display:flex;flex-direction:column;gap:6px}.auth-gate__label{font-size:12px;font-weight:600;color:#4a5650;padding-left:2px}.auth-gate__input-wrapper{position:relative;display:flex;align-items:center}.auth-gate__input-icon{position:absolute;left:14px;color:#839089;pointer-events:none;transition:color .25s ease}.auth-gate__input{width:100%;padding:13px 16px 13px 40px;background:#00000006;border:1px solid rgba(0,0,0,.05);border-radius:12px;font-size:15px;color:#1a221e;transition:all .25s cubic-bezier(.4,0,.2,1)}.auth-gate__input--password{padding-right:44px}.auth-gate__input:focus{background:#fff;border-color:var(--color-green-700);box-shadow:0 0 0 4px #2f6b281a,0 2px 8px #0000000a;outline:none}.auth-gate__input-wrapper:focus-within .auth-gate__input-icon{color:var(--color-green-700)}.auth-gate__toggle-password{position:absolute;right:12px;color:#839089;cursor:pointer;padding:6px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.auth-gate__toggle-password:hover{color:#1a221e;background:#0000000a}.auth-gate__toggle-password:active{transform:scale(.92)}.auth-gate__error{background:#fdf3f2;border:1px solid rgba(179,38,30,.12);color:var(--color-red-700);padding:11px 14px;border-radius:10px;font-size:13px;font-weight:500;display:flex;align-items:center;gap:8px;animation:authSlideDown .35s cubic-bezier(.16,1,.3,1) both}@keyframes authSlideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.auth-gate__submit{margin-top:var(--space-2);background:linear-gradient(180deg,#3c7d34,#295c22);color:#fff;border:none;border-radius:12px;padding:14px 24px;font-size:15px;font-weight:600;width:100%;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px #2f6b2833,0 1px 2px #0000000d;transition:all .2s cubic-bezier(.4,0,.2,1)}.auth-gate__submit:hover{transform:translateY(-1px);box-shadow:0 6px 20px #2f6b2847,0 1px 2px #0000000d;background:linear-gradient(180deg,#43893a,#2f6927)}.auth-gate__submit:active{transform:translateY(1px) scale(.98);box-shadow:0 2px 6px #2f6b2826}.auth-gate__hint{background:#00000005;border:1px solid rgba(0,0,0,.04);border-radius:10px;padding:10px 14px;font-size:12px;color:#637069;display:flex;align-items:center;justify-content:center;gap:var(--space-2);margin-top:var(--space-4);line-height:1.4}.auth-gate__hint-key{color:#3b4641;font-weight:600}:root{--brand-blue: #2e95c7;--brand-green: #59a54c;--brand-gray-dark: #4f4f4e;--brand-gray-mid: #898989;--brand-gray-light: #bcbdbd;--color-green-700: #2f6b28;--color-green-600: var(--brand-green);--color-green-100: #e6f2e3;--color-green-50: #f2f8f0;--color-blue-700: #1f6a90;--color-blue-600: var(--brand-blue);--color-blue-100: #e3f2f8;--color-blue-50: #f0f8fb;--color-red-700: #b3261e;--color-red-600: #d5392f;--color-red-100: #fbe4e2;--color-red-50: #fdf3f2;--color-amber-600: #b9791f;--color-amber-100: #f8ecd8;--color-ink: #1a1d1b;--color-ink-soft: #57635c;--color-gray-mid: var(--brand-gray-mid);--color-gray-light: var(--brand-gray-light);--color-border: #e8ece6;--color-border-strong: #d5dad3;--color-bg: #f5f6f2;--color-bg-alt: #eaede6;--color-surface: #ffffff;--color-surface-sunken: #fafbfa;--font-sans: -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", "Segoe UI", Roboto, "Inter", Helvetica, Arial, sans-serif;--text-xs: .75rem;--text-sm: .8125rem;--text-base: .9375rem;--text-md: 1.0625rem;--text-lg: 1.25rem;--text-xl: 1.5rem;--text-2xl: 1.75rem;--leading-tight: 1.15;--leading-normal: 1.4;--leading-relaxed: 1.6;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--radius-sm: 10px;--radius-md: 16px;--radius-lg: 22px;--radius-pill: 999px;--shadow-card: 0 1px 3px rgba(0, 0, 0, .02), 0 6px 18px rgba(47, 107, 40, .03);--shadow-float: 0 16px 40px rgba(0, 0, 0, .08);--app-max-width: 460px;--nav-height: 64px;--header-height: 56px;--duration-fast: .15s;--duration-base: .2s;--duration-slow: .25s;--ease-standard: cubic-bezier(.2, 0, 0, 1)}@media (prefers-color-scheme: dark){:root[data-theme=dark]{--color-ink: #eef1ec;--color-ink-soft: #c7ccc4;--color-bg: #12140f;--color-bg-alt: #171a13;--color-surface: #1d2118;--color-surface-sunken: #191c15;--color-border: #2a2f24;--color-border-strong: #363c2f;--color-green-50: #16241a;--color-green-100: #1c3423;--color-blue-50: #10222b;--color-blue-100: #12313e;--color-red-50: #2a1614;--color-red-100: #3a1c19}}:root[data-theme=light]{color-scheme:light}.ui-card{background:var(--color-surface);border:1px solid rgba(0,0,0,.03);border-radius:20px;box-shadow:0 4px 16px #00000004;padding:var(--space-5);transition:all var(--duration-fast) var(--ease-standard)}.ui-card--accent{background:linear-gradient(135deg,#377c2f,#204c1a);border:none;color:#fff;box-shadow:0 10px 24px -4px #2f6b2838}.ui-card--accent .ui-text-muted{color:#ffffffd9}.ui-card--accent .ui-btn--secondary{background:#fff;color:var(--color-green-700);border:none;box-shadow:0 4px 12px #00000014}.ui-card--accent .ui-btn--secondary:hover{background:#ffffffeb}.ui-card--outline{background:var(--color-surface);border:1px solid rgba(0,0,0,.04);box-shadow:none}.ui-section-title{font-size:var(--text-sm);font-weight:var(--weight-bold);letter-spacing:.02em;text-transform:uppercase;color:var(--color-gray-mid);margin-bottom:var(--space-3)}.ui-page-title{font-size:var(--text-2xl);font-weight:var(--weight-bold);color:var(--color-ink);letter-spacing:-.01em}.ui-badge{display:inline-flex;align-items:center;gap:4px;font-size:var(--text-xs);font-weight:var(--weight-semibold);padding:3px 9px;border-radius:var(--radius-pill);line-height:1.4;white-space:nowrap}.ui-badge--green{background:var(--color-green-100);color:var(--color-green-700)}.ui-badge--blue{background:var(--color-blue-100);color:var(--color-blue-700)}.ui-badge--red{background:var(--color-red-100);color:var(--color-red-700)}.ui-badge--amber{background:var(--color-amber-100);color:var(--color-amber-600)}.ui-badge--gray{background:var(--color-bg-alt);color:var(--color-ink-soft)}.ui-pill-group{display:flex;gap:var(--space-2);overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.ui-pill-group::-webkit-scrollbar{display:none}.ui-pill{flex-shrink:0;display:inline-flex;align-items:center;min-height:36px;padding:0 var(--space-4);border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-ink-soft);font-size:var(--text-sm);font-weight:var(--weight-medium);transition:background var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard)}.ui-pill[aria-pressed=true]{background:var(--color-green-700);border-color:var(--color-green-700);color:#fff}.ui-pill:active{transform:scale(.98)}.ui-segmented{display:flex;padding:3px;background:#0000000a;border-radius:12px;gap:2px;width:100%}.ui-segmented__btn{flex:1;min-height:36px;padding:0 var(--space-4);border-radius:9px;font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-ink-soft);transition:all var(--duration-fast) var(--ease-standard)}.ui-segmented__btn[aria-pressed=true]{background:#fff;color:var(--color-green-700);box-shadow:0 1px 3px #00000014,0 1px 1px #00000008}.ui-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:46px;padding:0 var(--space-5);border-radius:12px;font-size:var(--text-base);font-weight:var(--weight-semibold);width:100%;transition:all var(--duration-fast) var(--ease-standard)}.ui-btn:active{transform:scale(.975)}.ui-btn--primary{background:linear-gradient(180deg,#377c2f,#295e22);color:#fff;border:none;box-shadow:0 4px 12px #2f6b2826}.ui-btn--primary:hover{background:linear-gradient(180deg,#3d8835,#2f6a27)}.ui-btn--secondary{background:#00000008;color:var(--color-ink);border:none;backdrop-filter:blur(10px)}.ui-btn--secondary:hover{background:#0000000f}.ui-btn--ghost{background:transparent;color:var(--color-green-700)}.ui-btn--danger{background:linear-gradient(180deg,#d3382e,#b2261d);color:#fff;border:none;box-shadow:0 4px 12px #b3261e26}.ui-btn:disabled{opacity:.5;pointer-events:none}.ui-btn--auto{width:auto}.ui-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--radius-pill);color:var(--color-ink)}.ui-icon-btn:active{background:var(--color-bg-alt)}.ui-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);color:var(--color-gray-mid)}.ui-empty__icon{width:48px;height:48px;border-radius:50%;background:var(--color-bg-alt);display:flex;align-items:center;justify-content:center;color:var(--color-gray-mid);margin-bottom:var(--space-2)}.ui-empty__title{font-weight:var(--weight-semibold);color:var(--color-ink)}.ui-sheet-overlay{position:fixed;inset:0;background:#141a1266;z-index:50;display:flex;align-items:flex-end;justify-content:center;animation:ui-fade-in var(--duration-base) var(--ease-standard)}.ui-sheet{width:100%;max-width:var(--app-max-width);background:var(--color-surface);border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:var(--space-3) var(--space-4) calc(var(--space-4) + env(safe-area-inset-bottom));max-height:85vh;overflow-y:auto;animation:ui-slide-up var(--duration-slow) var(--ease-standard)}.ui-sheet__handle{width:36px;height:4px;border-radius:var(--radius-pill);background:var(--color-border-strong);margin:0 auto var(--space-3)}@keyframes ui-fade-in{0%{opacity:0}to{opacity:1}}@keyframes ui-slide-up{0%{transform:translateY(24px);opacity:.6}to{transform:translateY(0);opacity:1}}@media (prefers-reduced-motion: reduce){.ui-sheet-overlay,.ui-sheet{animation:none}}.ui-field{display:flex;flex-direction:column;gap:6px}.ui-label{font-size:12px;font-weight:600;color:var(--color-ink-soft);padding-left:2px}.ui-input,.ui-textarea,.ui-select{border:1px solid rgba(0,0,0,.05);border-radius:12px;padding:var(--space-3);background:#00000006;font-size:var(--text-base);min-height:44px;width:100%;transition:all var(--duration-fast) var(--ease-standard)}.ui-input:focus,.ui-textarea:focus,.ui-select:focus{background:#fff;border-color:var(--color-green-700);box-shadow:0 0 0 4px #2f6b281a,0 2px 8px #0000000a;outline:none}.ui-textarea{min-height:96px;resize:vertical}.ui-search{display:flex;align-items:center;gap:var(--space-2);border:1px solid rgba(0,0,0,.04);border-radius:12px;padding:0 var(--space-4);min-height:44px;background:#00000008;color:#8e8e93;transition:all var(--duration-fast) var(--ease-standard)}.ui-search:focus-within{background:#fff;border-color:var(--color-green-700);box-shadow:0 0 0 4px #2f6b281a,0 2px 8px #0000000a}.ui-search input{border:none;background:transparent;flex:1;min-height:42px;font-size:var(--text-base);color:var(--color-ink)}.ui-search input:focus{outline:none}.ui-switch{position:relative;display:inline-flex;align-items:center;width:46px;height:26px;border-radius:var(--radius-pill);background:var(--color-border-strong);flex-shrink:0;transition:background var(--duration-fast) var(--ease-standard)}.ui-switch[aria-checked=true]{background:var(--color-green-700)}.ui-switch__thumb{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #0003;transition:transform var(--duration-fast) var(--ease-standard)}.ui-switch[aria-checked=true] .ui-switch__thumb{transform:translate(20px)}.ui-list-row{display:flex;align-items:center;gap:var(--space-3);min-height:52px;padding:var(--space-3) 0;border-bottom:1px solid var(--color-border);color:var(--color-ink)}.ui-list-row:last-child{border-bottom:none}.ui-list-row__icon{width:36px;height:36px;border-radius:var(--radius-sm);background:var(--color-green-50);color:var(--color-green-700);display:flex;align-items:center;justify-content:center;flex-shrink:0}.ui-list-row__label{flex:1;font-size:var(--text-base);font-weight:var(--weight-medium)}.ui-list-row__chevron{color:var(--color-gray-light);flex-shrink:0}.ui-text-muted{color:var(--color-gray-mid)}.ui-stack{display:flex;flex-direction:column;gap:var(--space-3)}@media (min-width: 900px){.ui-grid-2{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));align-items:start;gap:var(--space-3) var(--space-4)}}.ui-container{padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-5);width:100%}@media (min-width: 900px){.ui-container{max-width:1440px;margin-inline:auto;padding:var(--space-8) var(--space-8);gap:var(--space-6)}.ui-page-title{font-size:var(--text-2xl)}}@media (min-width: 640px){.app-header{padding-top:36px!important}}*,*:before,*:after{box-sizing:border-box}html{height:100%;-webkit-text-size-adjust:100%}body{margin:0;min-height:100dvh;min-height:100vh;font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-ink);background:var(--color-bg-alt);-webkit-font-smoothing:antialiased}img,svg{display:block;max-width:100%}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:none;border:none}a{color:inherit;text-decoration:none}ul,ol{margin:0;padding:0;list-style:none}h1,h2,h3,p{margin:0}:focus-visible{outline:2px solid var(--color-blue-600);outline-offset:2px;border-radius:var(--radius-sm)}.app-viewport{min-height:100dvh;min-height:100vh;display:flex;justify-content:center;background:var(--color-bg-alt)}html:not([data-authed=true]) .app-viewport{display:none}html[data-authed=true] .auth-gate{display:none}.app-frame{width:100%;max-width:var(--app-max-width);min-height:100dvh;min-height:100vh;background:var(--color-bg);position:relative;display:flex;flex-direction:column}@media (min-width: 640px){.app-viewport{background:radial-gradient(circle at 50% 50%,#f4f6f3,#d5dad4);padding-block:var(--space-6);display:flex;align-items:center;justify-content:center;overflow:hidden}.app-frame{width:375px;height:812px;min-height:812px;max-height:812px;border-radius:40px;overflow:hidden;box-shadow:0 25px 50px -12px #0000002e,0 0 0 12px #1c1e1d,0 0 0 13px #2d312f,0 0 0 15px #0000000f;position:relative;border:none;background:var(--color-bg)}.app-frame:before{content:"";position:absolute;top:11px;left:50%;transform:translate(-50%);width:90px;height:24px;background:#000;border-radius:12px;z-index:100;pointer-events:none;box-shadow:inset 0 .5px 1px #ffffff14}.app-main{overflow-y:auto;height:100%;scrollbar-width:none}.app-main::-webkit-scrollbar{display:none}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.demo-tag{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--color-gray-mid);font-weight:var(--weight-medium)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}html.layout-full{--app-max-width: 600px}@media (min-width: 640px){html.layout-full .app-viewport{background:var(--color-bg-alt);padding-block:0;display:flex;justify-content:stretch;overflow:auto}html.layout-full .app-frame{width:100%;max-width:none;height:auto;min-height:100vh;max-height:none;border-radius:0;box-shadow:none;border:none;position:relative}html.layout-full .app-frame:before{display:none}html.layout-full .app-main{overflow-y:visible;height:auto;scrollbar-width:auto}html.layout-full .app-main::-webkit-scrollbar{display:block}html.layout-full .app-header{padding-top:var(--space-3)!important}}.app-main[data-astro-cid-sjl6a77h]{flex:1;padding-bottom:calc(var(--nav-height) + var(--space-8) + env(safe-area-inset-bottom) + 24px);min-width:0}.layout-toggle[data-astro-cid-sjl6a77h]{position:fixed;top:20px;right:20px;z-index:1000;display:none}@media (min-width: 640px){.layout-toggle[data-astro-cid-sjl6a77h]{display:block}}.layout-toggle__btn[data-astro-cid-sjl6a77h]{display:flex;align-items:center;gap:8px;background:#ffffffd9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(0,0,0,.08);box-shadow:0 4px 16px #0000000f;padding:10px 14px;border-radius:12px;font-size:13px;font-weight:600;color:#1c201e;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1)}.layout-toggle__btn[data-astro-cid-sjl6a77h]:hover{transform:translateY(-1px);background:#fff;box-shadow:0 6px 20px #00000014;border-color:#00000026}.layout-toggle__btn[data-astro-cid-sjl6a77h]:active{transform:translateY(1px) scale(.98)}html.layout-full .layout-toggle__btn[data-astro-cid-sjl6a77h]{background:#fff;color:var(--color-green-700);border-color:#2f6b2826;box-shadow:0 4px 16px #2f6b280f}.app-header[data-astro-cid-z6cq2e3w]{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);min-height:var(--header-height);padding:max(env(safe-area-inset-top),var(--space-3)) var(--space-4) var(--space-2);background:var(--color-bg)}@media (min-width: 900px){.app-header[data-astro-cid-z6cq2e3w]{padding-inline:var(--space-6)}}.app-header__start[data-astro-cid-z6cq2e3w],.app-header__brand[data-astro-cid-z6cq2e3w]{display:flex;align-items:center;gap:var(--space-2);min-width:0}.app-header__brand-text[data-astro-cid-z6cq2e3w]{display:flex;flex-direction:column;line-height:1.2;min-width:0}.app-header__brand-text[data-astro-cid-z6cq2e3w] strong[data-astro-cid-z6cq2e3w]{font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--color-ink)}.app-header__brand-text[data-astro-cid-z6cq2e3w] small[data-astro-cid-z6cq2e3w]{font-size:10.5px;color:var(--color-gray-mid);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}.app-header__title[data-astro-cid-z6cq2e3w]{font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--color-ink)}.app-header__icon-btn[data-astro-cid-z6cq2e3w]{position:relative;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--radius-pill);color:var(--color-ink);flex-shrink:0}.app-header__icon-btn[data-astro-cid-z6cq2e3w]:active{background:var(--color-bg-alt)}.app-header__dot[data-astro-cid-z6cq2e3w]{position:absolute;top:10px;right:10px;width:8px;height:8px;border-radius:50%;background:var(--color-red-600);border:1.5px solid var(--color-bg)}
