@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){:root,:host{--shimmer-angle:20deg}*,:before,:after,::backdrop{--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-font-weight:initial;--tw-outline-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0;--scroll-fade-t:0px;--scroll-fade-b:0px;--scroll-fade-s:0px;--scroll-fade-e:0px;--scroll-fade-mask:initial;--shimmer-image:initial;--shimmer-text-fill:initial}}}@layer theme{:root,:host{--font-sans:var(--font-sans);--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-neutral-400:#a1a1a1;--color-neutral-600:#525252;--color-neutral-950:#0a0a0a;--color-white:#fff;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--font-weight-medium:500;--font-weight-bold:700;--radius-md:calc(var(--radius) * .8);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}@supports (color:lab(0% 0 0)){:root,:host{--color-neutral-400:lab(66.128% -.0000298023 .0000119209);--color-neutral-600:lab(34.924% 0 0);--color-neutral-950:lab(2.75381% 0 0)}}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}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;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:var(--border);outline-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){*{outline-color:color-mix(in oklab, var(--ring) 50%, transparent)}}body{background-color:var(--background);color:var(--foreground)}html{font-family:var(--font-sans)}}@layer components;@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.relative{position:relative}.static{position:static}.block{display:block}.flex{display:flex}.grid{display:grid}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.shrink-0{flex-shrink:0}.animate-marquee{animation:marquee var(--duration) infinite linear}.animate-marquee-vertical{animation:marquee-vertical var(--duration) linear infinite}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.items-center{align-items:center}.justify-around{justify-content:space-around}.justify-center{justify-content:center}.gap-\(--gap\){gap:var(--gap)}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.overflow-hidden{overflow:hidden}.rounded-\[min\(var\(--radius-md\)\,10px\)\]{border-radius:min(var(--radius-md), 10px)}.rounded-\[min\(var\(--radius-md\)\,12px\)\]{border-radius:min(var(--radius-md), 12px)}.rounded-lg{border-radius:var(--radius)}.border{border-style:var(--tw-border-style);border-width:1px}.border-border{border-color:var(--border)}.border-transparent{border-color:#0000}.bg-background{background-color:var(--background)}.bg-destructive\/10{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.bg-destructive\/10{background-color:color-mix(in oklab, var(--destructive) 10%, transparent)}}.bg-paper{background-color:var(--n-bg)}.bg-primary{background-color:var(--primary)}.bg-secondary{background-color:var(--secondary)}.bg-gradient-to-r{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-neutral-950{--tw-gradient-from:var(--color-neutral-950);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.via-neutral-400{--tw-gradient-via:var(--color-neutral-400);--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-neutral-950{--tw-gradient-to:var(--color-neutral-950);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.bg-\[length\:200\%_100\%\]{background-size:200% 100%}.bg-clip-padding{background-clip:padding-box}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.p-2{padding:calc(var(--spacing) * 2)}.p-8{padding:calc(var(--spacing) * 8)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-2{padding-block:calc(var(--spacing) * 2)}.font-hanzi{font-family:Noto Serif SC,serif}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.8rem\]{font-size:.8rem}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.whitespace-nowrap{white-space:nowrap}.text-destructive{color:var(--destructive)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-terracotta{color:var(--n-accent)}.text-transparent{color:#0000}.uppercase{text-transform:uppercase}.underline-offset-4{text-underline-offset:4px}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.\[--duration\:40s\]{--duration:40s}.\[--gap\:1rem\]{--gap:1rem}.\[animation-direction\:reverse\]{animation-direction:reverse}@media (hover:hover){.group-hover\:\[animation-play-state\:paused\]:is(:where(.group):hover *){animation-play-state:paused}.hover\:bg-\[color-mix\(in_oklch\,var\(--secondary\)\,var\(--foreground\)_5\%\)\]:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-\[color-mix\(in_oklch\,var\(--secondary\)\,var\(--foreground\)_5\%\)\]:hover{background-color:color-mix(in oklch,var(--secondary),var(--foreground) 5%)}}.hover\:bg-destructive\/20:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-destructive\/20:hover{background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.hover\:bg-muted:hover{background-color:var(--muted)}.hover\:bg-primary\/80:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/80:hover{background-color:color-mix(in oklab, var(--primary) 80%, transparent)}}.hover\:text-foreground:hover{color:var(--foreground)}.hover\:underline:hover{text-decoration-line:underline}}.focus-visible\:border-destructive\/40:focus-visible{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:border-destructive\/40:focus-visible{border-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.focus-visible\:border-ring:focus-visible{border-color:var(--ring)}.focus-visible\:ring-3:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.active\:not-aria-\[haspopup\]\:translate-y-px:active:not([aria-haspopup]){--tw-translate-y:1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-50:disabled{opacity:.5}:where([data-slot=button-group]) .in-data-\[slot\=button-group\]\:rounded-lg{border-radius:var(--radius)}.has-data-\[icon\=inline-end\]\:pr-1\.5:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 1.5)}.has-data-\[icon\=inline-end\]\:pr-2:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 2)}.has-data-\[icon\=inline-start\]\:pl-1\.5:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 1.5)}.has-data-\[icon\=inline-start\]\:pl-2:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 2)}.aria-expanded\:bg-muted[aria-expanded=true]{background-color:var(--muted)}.aria-expanded\:bg-secondary[aria-expanded=true]{background-color:var(--secondary)}.aria-expanded\:text-foreground[aria-expanded=true]{color:var(--foreground)}.aria-expanded\:text-secondary-foreground[aria-expanded=true]{color:var(--secondary-foreground)}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:var(--destructive)}.aria-invalid\:ring-3[aria-invalid=true]{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.dark\:border-input:is(.dark *){border-color:var(--input)}.dark\:bg-destructive\/20:is(.dark *){background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-destructive\/20:is(.dark *){background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.dark\:bg-input\/30:is(.dark *){background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-input\/30:is(.dark *){background-color:color-mix(in oklab, var(--input) 30%, transparent)}}.dark\:from-white:is(.dark *){--tw-gradient-from:var(--color-white);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.dark\:via-neutral-600:is(.dark *){--tw-gradient-via:var(--color-neutral-600);--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.dark\:to-white:is(.dark *){--tw-gradient-to:var(--color-white);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}@media (hover:hover){.dark\:hover\:bg-destructive\/30:is(.dark *):hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-destructive\/30:is(.dark *):hover{background-color:color-mix(in oklab, var(--destructive) 30%, transparent)}}.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:color-mix(in oklab, var(--input) 50%, transparent)}}.dark\:hover\:bg-muted\/50:is(.dark *):hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-muted\/50:is(.dark *):hover{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}}.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.dark\:aria-invalid\:border-destructive\/50:is(.dark *)[aria-invalid=true]{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:aria-invalid\:border-destructive\/50:is(.dark *)[aria-invalid=true]{border-color:color-mix(in oklab, var(--destructive) 50%, transparent)}}.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5 svg:not([class*=size-]){width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}@property --scroll-fade-t{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-b{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-s{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-e{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-mask{syntax:"*";inherits:false}@property --shimmer-angle{syntax:"<angle>";inherits:true;initial-value:20deg}@property --shimmer-image{syntax:"*";inherits:false}@property --shimmer-text-fill{syntax:"*";inherits:false}@media (prefers-reduced-motion:reduce){.shimmer{-webkit-text-fill-color:currentColor;background-image:none;animation:none}}:root{--n-bg:#fbf4e6;--n-surface:#fffdf8;--n-line:#ddceb3;--n-line2:#efe6d2;--n-grid:#ddd2bd;--n-ink:#2c271f;--n-muted:#756a5a;--n-faint:#857463;--n-fill:#ece4d6;--n-accent:#b5502d;--n-accent-deep:#9e4526;--n-acfill:#f3e4d6;--n-jade:#2f7a6e;--n-jadefill:#e3ede9;--n-on-accent:#fffdf8;--n-gold:#c79a3e;--n-prosurface:#1c1712;--n-proink:#f4ede0;--n-shadow-press:0 3px 0 var(--n-accent-deep);--n-shadow-paper:0 1px 0 var(--n-line2), 0 6px 18px #3c30201f;--n-shadow-lift:0 4px 12px #3c30201a;--n-glow:0 10px 22px #bd553147}*{box-sizing:border-box;margin:0}html{scroll-behavior:smooth}[id]{scroll-margin-top:4.4rem}html,body{overscroll-behavior-x:none;overflow-x:clip}body{background:var(--n-bg);color:var(--n-ink);background-image:repeating-linear-gradient(0deg,#0000,#0000 27px,#ddd2bd47 27px 28px),repeating-linear-gradient(90deg,#0000,#0000 27px,#ddd2bd2e 27px 28px),url(/assets/paper-ground.png);font-family:Plus Jakarta Sans,system-ui,sans-serif;line-height:1.65;overflow-x:hidden}.wrap{max-width:1060px;margin:0 auto;padding:0 1.4rem}h1,h2,h3{text-wrap:balance;font-family:Fraunces,Georgia,serif;font-weight:600}.hanzi{font-family:Noto Serif SC,serif}img{max-width:100%}a{color:inherit}.masthead{z-index:50;background:var(--n-bg);position:sticky;top:0}@supports (color:color-mix(in lab, red, red)){.masthead{background:color-mix(in srgb, var(--n-bg) 92%, transparent)}}.masthead{-webkit-backdrop-filter:blur(8px);border-bottom:1.5px solid var(--n-ink)}.mast{align-items:center;gap:1.2rem;padding-block:.7rem;display:flex}.brand{align-items:center;gap:.65rem;margin-right:auto;text-decoration:none;display:flex}.brand .seal{flex:none;width:36px;height:36px}.brand .wordmark{letter-spacing:.01em;font-family:Fraunces,Georgia,serif;font-size:1.25rem;font-weight:700;line-height:1}.brand .wordmark i{color:var(--n-accent);font-style:normal}.brand .tag{letter-spacing:.18em;color:var(--n-faint);text-transform:uppercase;margin-top:.16rem;font-size:.58rem;font-weight:700;display:block}.mast .links{letter-spacing:.06em;color:var(--n-muted);text-transform:uppercase;gap:1.2rem;font-size:.82rem;font-weight:700;display:flex}.mast .links a{border-bottom:2px solid #0000;padding-bottom:.15rem;text-decoration:none}.mast .links a:hover{color:var(--n-accent);border-color:var(--n-accent)}.mast .cta-mini{background:var(--n-accent);color:var(--n-on-accent);white-space:nowrap;box-shadow:var(--n-shadow-press);border-radius:12px;padding:.5rem 1rem;font-size:.82rem;font-weight:800;text-decoration:none}.mast .cta-mini:hover{background:var(--n-accent-deep)}@media (max-width:760px){.mast .links{display:none}}.kicker{letter-spacing:.14em;color:var(--n-accent);text-transform:uppercase;align-items:center;gap:.5rem;margin-bottom:1rem;font-size:.74rem;font-weight:800;display:inline-flex}.kicker:before{content:attr(data-zi);letter-spacing:0;color:var(--n-on-accent);background:var(--n-accent);box-shadow:0 1px 0 var(--n-accent-deep);border-radius:6px;padding:.28rem .34rem;font-family:Noto Serif SC,serif;font-size:.9rem;line-height:1;transform:rotate(-4deg)}.hero{grid-template-columns:1.02fr .98fr;align-items:center;gap:3rem;padding-block:3.8rem 4.2rem;display:grid}.hero h1{margin-bottom:1.2rem;font-size:clamp(2.1rem,5.2vw,3.4rem);line-height:1.14}.hero h1 em{color:var(--n-accent);font-style:normal}.props{color:var(--n-muted);gap:.55rem;max-width:50ch;margin-bottom:1.7rem;padding:0;font-size:1.02rem;list-style:none;display:grid}.props li{padding-left:1.35rem;position:relative}.props li:before{content:"印";color:var(--n-accent);font-family:Noto Serif SC,serif;font-size:.72rem;position:absolute;top:.08em;left:0}.props li b{color:var(--n-ink);font-weight:600}.cta{background:var(--n-accent);color:var(--n-on-accent);box-shadow:var(--n-shadow-press);border-radius:12px;padding:.95rem 1.7rem;font-weight:800;text-decoration:none;transition:transform .12s,background .12s,box-shadow .12s;display:inline-block}.cta:hover{background:var(--n-accent-deep);box-shadow:0 2px 0 var(--n-accent-deep);transform:translateY(1px)}.hero .cta{box-shadow:var(--n-shadow-press), var(--n-glow)}.hero .cta:hover{box-shadow:0 2px 0 var(--n-accent-deep), var(--n-glow)}.cta-note{color:var(--n-muted);margin-top:.75rem;font-size:.85rem;display:block}.hero .hero-stores{justify-content:flex-start;margin:.7rem 0 0}.hsk-line{color:var(--n-muted);margin-top:1.3rem;font-size:.85rem}.hsk-line b{color:var(--n-jade)}.promo-ticket{background:var(--n-acfill);border:1.5px solid var(--n-accent);border-radius:14px;flex-wrap:wrap;align-items:center;gap:.7rem .9rem;max-width:440px;margin-top:1rem;padding:.7rem .95rem;text-decoration:none;display:flex}.promo-ticket:hover{background:var(--n-surface)}.promo-ticket .pt-flag{background:var(--n-accent);color:var(--n-on-accent);letter-spacing:.1em;border-radius:8px;flex:none;padding:.28rem .5rem;font-size:.6rem;font-weight:800}.promo-ticket .pt-body{color:var(--n-ink);flex-direction:column;gap:.15rem;font-size:.85rem;line-height:1.35;display:flex}.promo-ticket .pt-body>b{font-size:.88rem}.promo-ticket .pt-price{color:var(--n-muted);font-size:.82rem}.promo-ticket .pt-price s{color:var(--n-faint);margin-right:.25rem}.promo-ticket .pt-price b{color:var(--n-accent-deep);font-size:.95rem}.promo-ticket .pt-go{color:var(--n-accent-deep);margin-left:auto;font-weight:800}.price-line{color:var(--n-muted);margin-top:.85rem;margin-bottom:0;font-size:.85rem}.price-line b{color:var(--n-ink)}.desk{min-height:430px;position:relative}.desk-tiles{z-index:3;gap:8px;display:flex;position:absolute;bottom:0;right:11%;transform:rotate(-5deg)}.desk-tiles .tile{width:48px;box-shadow:0 5px 0 var(--n-tile-side), 0 10px 0 -1.5px var(--n-tile-back), 0 14px 16px #3c302033;font-size:1.7rem}.desk-tiles .tile:last-child{transform:rotate(4deg)translateY(5px)}.paper{background:var(--n-surface);border:1px solid var(--n-line);box-shadow:var(--n-shadow-paper);border-radius:14px;position:absolute}.sheet-grid{z-index:1;width:min(250px,62vw);padding:1rem;top:0;left:0;transform:rotate(-2.5deg)}.sheet-grid .lab{letter-spacing:.12em;color:var(--n-faint);text-transform:uppercase;margin-bottom:.6rem;font-size:.64rem;font-weight:800;display:block}.mizige{aspect-ratio:1;border:1.5px solid var(--n-grid);border-radius:8px;place-items:center;display:grid;position:relative;overflow:hidden}.mizige:before,.mizige:after{content:"";pointer-events:none;position:absolute;inset:0}.mizige:before{background:linear-gradient(var(--n-grid), var(--n-grid)) 50% 0/1.5px 100% no-repeat, linear-gradient(var(--n-grid), var(--n-grid)) 0 50%/100% 1.5px no-repeat;opacity:.75}.mizige:after{background:linear-gradient(45deg, transparent calc(50% - .75px), var(--n-grid) calc(50% - .75px), var(--n-grid) calc(50% + .75px), transparent calc(50% + .75px)), linear-gradient(-45deg, transparent calc(50% - .75px), var(--n-grid) calc(50% - .75px), var(--n-grid) calc(50% + .75px), transparent calc(50% + .75px));opacity:.45}.mizige b{color:var(--n-ink);z-index:1;font-family:Noto Serif SC,serif;font-size:clamp(5rem,14vw,7rem);font-weight:700;line-height:1}.sheet-grid .py{text-align:center;color:var(--n-jade);margin-top:.5rem;font-size:.95rem;font-weight:600}.sheet-grid .id{text-align:center;color:var(--n-muted);font-size:.8rem}.sheet-card{z-index:2;width:min(240px,58vw);padding:1rem 1.1rem 1.15rem;top:8%;right:0;transform:rotate(2deg)}.sheet-card .lab{letter-spacing:.12em;color:var(--n-faint);text-transform:uppercase;font-size:.64rem;font-weight:800}.sheet-card .glyph{text-align:center;margin:.55rem 0 .1rem;font-family:Noto Serif SC,serif;font-size:2.9rem;display:block}.sheet-card .pinyin{text-align:center;color:var(--n-jade);font-size:.98rem}.sheet-card .arti{text-align:center;color:var(--n-muted);margin-bottom:.85rem;font-size:.84rem}.grades{grid-template-columns:repeat(4,1fr);gap:.35rem;display:grid}.grades span{text-align:center;border:1px solid var(--n-line);color:var(--n-muted);border-radius:8px;padding:.42rem 0;font-size:.68rem;font-weight:700}.grades .good{background:var(--n-jadefill);border-color:var(--n-jade);color:var(--n-jade)}.sheet-streak{z-index:3;align-items:center;gap:.4rem;padding:.8rem 1rem;display:flex;bottom:0;left:8%;transform:rotate(-1deg)}.sheet-streak .lab{letter-spacing:.1em;color:var(--n-faint);text-transform:uppercase;margin-right:.35rem;font-size:.64rem;font-weight:800}.sheet-streak i{border:1.5px dashed var(--n-faint);width:28px;height:28px;color:var(--n-faint);border-radius:7px;place-items:center;font-size:.78rem;font-style:normal;display:grid}.sheet-streak i.done{border-style:solid;border-color:var(--n-accent);color:var(--n-accent);background:var(--n-acfill);font-family:Noto Serif SC,serif;transform:rotate(-3deg)}.desk .stamp{z-index:4;border:3px solid var(--n-accent);width:74px;height:74px;color:var(--n-accent);opacity:.9;background:var(--n-acfill);border-radius:12px;place-items:center;font-family:Noto Serif SC,serif;font-size:2.3rem;font-weight:700;display:grid;position:absolute;top:2%;right:-1.5%;transform:rotate(8deg)}@supports (color:color-mix(in lab, red, red)){.desk .stamp{background:color-mix(in srgb, var(--n-acfill) 55%, transparent)}}.desk .mascot{z-index:5;filter:drop-shadow(0 8px 14px #2c271f38);width:104px;position:absolute;bottom:-10px;left:-2%}@media (max-width:840px){.hero{text-align:center;grid-template-columns:1fr;padding-top:2.4rem}.props{text-align:left;margin-inline:auto}.desk{min-height:400px;margin-top:1.6rem}.desk .mascot{width:80px;left:0}.hero .hero-stores{justify-content:center}}@media (max-width:640px){.wrap,.rule{padding-inline:1.6rem}.hero{gap:2.2rem;padding-bottom:3.2rem}.desk{min-height:380px}.sheet-grid{width:min(226px,56vw);left:2%}.sheet-card{width:min(214px,53vw);right:2%}.sheet-streak{left:10%}.desk .stamp{right:6%}section.block{padding-block:3.6rem 3rem}.feature{padding-block:2rem}.mast .cta-mini{padding:.62rem 1.05rem}}@media (max-width:480px){section.block{padding-block:3rem 2.4rem}.statement{padding-block:3.4rem 1rem}.sub{margin-bottom:1.8rem}.metode .stamp-corner{width:44px;height:44px;font-size:1.25rem;top:1rem;right:1rem}.pro-card{padding:1.7rem 1.4rem}.pro-card img{width:100px}.faq-head{align-items:center}.faq-head img{width:68px}.modal .box{padding:1.5rem 1.25rem}}@media (max-width:380px){.brand .tag{display:none}}@media (max-width:560px){.desk{zoom:.78;min-height:400px}.sheet-grid{width:250px;left:0}.sheet-card{width:240px;right:0}.sheet-streak{left:8%}.desk .stamp{right:0}.desk-tiles{right:11%}}@media (max-width:440px){.desk{zoom:.64}}@media (max-width:372px){.desk{zoom:.55}}:root{--n-tile-face:#fffef4;--n-tile-side:#e7dcc2;--n-tile-line:#e2d7bc;--n-tile-glyph:#1b5346;--n-tile-back:#2f7a6e}.tile{aspect-ratio:1/1.32;background:var(--n-tile-face);border:1px solid var(--n-tile-line);color:var(--n-tile-glyph);text-shadow:0 1px #ffffffb8;box-shadow:0 4px 0 var(--n-tile-side), 0 8px 0 -1.5px var(--n-tile-back), 0 16px 18px #3c30202e;border-radius:8px;place-items:center;font-family:Noto Serif SC,serif;font-style:normal;font-weight:900;line-height:1.14;display:inline-grid}.tile-v{grid-auto-flow:row}.tile-v i{font-style:normal;line-height:1.14}.fc-tile{width:86px;box-shadow:0 7px 0 var(--n-tile-side), 0 14px 0 -2px var(--n-tile-back), 0 22px 24px #3c302033;border-radius:10px;margin:.7rem auto .95rem;font-size:3.1rem;display:grid}.ledger{border-block:1.5px solid var(--n-ink);background:var(--n-surface);padding:.9rem 0 1.1rem;overflow:hidden}.ledger .row{color:var(--n-muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:2rem;padding-inline:1rem;font-size:.85rem;display:flex}.ledger .word{align-items:center;gap:.6rem;display:inline-flex}.ledger .tiles{gap:3px;display:inline-flex}.ledger .tile{width:30px;box-shadow:0 3px 0 var(--n-tile-side), 0 6px 0 -1.5px var(--n-tile-back), 0 9px 10px #3c302029;border-radius:7px;font-size:1.05rem}.ledger .py{color:var(--n-jade)}@media (max-width:760px){.ledger .row span:nth-child(n+4){display:none}}@media (max-width:480px){.ledger .row span:nth-child(n+3){display:none}}section.block{padding-block:4.6rem 3.6rem}.center{text-align:center}.display{margin-bottom:1rem;font-size:clamp(1.7rem,4.2vw,2.6rem);line-height:1.18}.display em{color:var(--n-accent);font-style:normal}.sub{color:var(--n-muted);max-width:62ch;margin:0 auto 2.4rem}.rule{color:var(--n-faint);align-items:center;gap:1rem;max-width:1060px;margin:0 auto;padding:0 1.4rem;display:flex}.rule:before,.rule:after{content:"";background:var(--n-ink);opacity:.35;flex:1;height:1px}.rule b{color:var(--n-muted);font-family:Noto Serif SC,serif;font-size:1.05rem;font-weight:500}.grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;display:grid}.page{background:var(--n-surface);border:1px solid var(--n-line);box-shadow:var(--n-shadow-paper);background-image:repeating-linear-gradient(0deg,#0000,#0000 26px,#ece2d28c 26px 27px);border-radius:14px;padding:1.35rem 1.35rem 1.45rem;position:relative;overflow:hidden}.page:before{content:"";background:var(--n-accent);width:1.5px;position:absolute;top:0;bottom:0;left:2.1rem}@supports (color:color-mix(in lab, red, red)){.page:before{background:color-mix(in srgb, var(--n-accent) 30%, transparent)}}.page .zi{color:var(--n-on-accent);background:var(--n-accent);box-shadow:0 1px 0 var(--n-accent-deep);border-radius:7px;padding:.32rem .4rem;font-size:1.35rem;line-height:1;position:absolute;top:.85rem;right:.9rem;transform:rotate(3deg)}.page h3{margin:0 0 .45rem 1.6rem;font-size:1.08rem}.page p{color:var(--n-muted);max-width:38ch;margin-left:1.6rem;font-size:.95rem}.feature{grid-template-columns:1fr 1fr;align-items:center;gap:3rem;padding:2.6rem 0;display:grid}.feature:nth-child(odd) .shot{order:-1}.feature h3{margin-bottom:.8rem;font-family:Fraunces,Georgia,serif;font-size:clamp(1.35rem,2.8vw,1.8rem)}.feature p{color:var(--n-muted);max-width:46ch}.feature .points{color:var(--n-muted);gap:.5rem;margin-top:1rem;padding:0;font-size:.93rem;list-style:none;display:grid}.feature .points li{padding-left:1.5rem;position:relative}.feature .points li:before{content:"毕";color:var(--n-jade);font-family:Noto Serif SC,serif;font-size:.8rem;position:absolute;top:.1em;left:0}.shot{justify-content:center;display:flex;position:relative}.shot .mini{background:var(--n-surface);border:1px solid var(--n-line);width:min(300px,88vw);box-shadow:var(--n-shadow-paper);z-index:2;border-radius:14px;padding:1.1rem 1.1rem 1.2rem;position:relative;transform:rotate(-1.2deg)}.feature:nth-child(odd) .shot .mini{transform:rotate(1.2deg)}@media (max-width:840px){.feature{grid-template-columns:1fr;gap:1.6rem}.feature .shot{order:-1}}.fc .tag{letter-spacing:.1em;color:var(--n-faint);text-transform:uppercase;font-size:.68rem;font-weight:800}.fc .glyph{text-align:center;margin:.7rem 0 .2rem;font-family:Noto Serif SC,serif;font-size:3.4rem;display:block}.fc .pinyin{text-align:center;color:var(--n-jade);font-size:1rem}.fc .arti{text-align:center;color:var(--n-muted);margin-bottom:1rem;font-size:.86rem}.fc .stamps{justify-content:center;gap:.35rem;margin-top:1rem;display:flex}.fc .stamps i{border:1.5px dashed var(--n-faint);width:26px;height:26px;color:var(--n-faint);border-radius:7px;place-items:center;font-size:.72rem;font-style:normal;display:grid}.fc .stamps i.done{border-style:solid;border-color:var(--n-accent);color:var(--n-accent);background:var(--n-acfill);font-family:Noto Serif SC,serif;transform:rotate(-3deg)}.bubble{border-radius:10px;max-width:100%;margin-bottom:.6rem;padding:.6rem .75rem;font-size:.8rem}.bubble.user{background:var(--n-fill);border:1px solid var(--n-line)}.bubble.ai{background:var(--n-surface);border:1px solid var(--n-line);box-shadow:0 2px 8px #2c271f0f}.bubble .zh{font-family:Noto Serif SC,serif;font-size:1.02rem;display:block}.bubble .py{color:var(--n-jade);font-size:.72rem;display:block}.bubble .id{color:var(--n-muted);margin-top:.15rem;font-size:.74rem;display:block}.bubble .fix{border-left:3px solid var(--n-accent);color:var(--n-muted);margin-top:.45rem;padding:.3rem 0 .3rem .55rem;font-size:.72rem}.bubble .fix b{color:var(--n-accent)}.bubble .fix .gai{border:1.5px solid var(--n-accent);width:16px;height:16px;color:var(--n-accent);vertical-align:-3px;border-radius:5px;place-items:center;margin-right:.35rem;font-family:Noto Serif SC,serif;font-size:.6rem;display:inline-grid;transform:rotate(-4deg)}.rp .score{text-align:center;font-family:Fraunces,serif;font-size:2.6rem;font-weight:700}.rp .score small{color:var(--n-muted);font-family:Plus Jakarta Sans,sans-serif;font-size:1rem}.rp .badge{background:var(--n-jadefill);width:max-content;color:var(--n-jade);border-radius:8px;margin:.3rem auto .9rem;padding:.2rem .7rem;font-size:.7rem;font-weight:800;display:block}.rp .bar{color:var(--n-muted);align-items:center;gap:.6rem;margin-bottom:.5rem;font-size:.72rem;display:flex}.rp .bar em{flex:none;width:74px;font-style:normal}.rp .bar .tr{background:var(--n-fill);border-radius:4px;flex:1;height:7px;overflow:hidden}.rp .bar .tr i{background:var(--n-jade);border-radius:4px;height:100%;display:block}.rp .bar.weak .tr i{background:var(--n-accent)}.rp .cta-row{color:var(--n-accent);background:var(--n-acfill);text-align:center;border-radius:8px;margin-top:.9rem;padding:.5rem .7rem;font-size:.74rem;font-weight:700}.metode{background:var(--n-surface);border:1.5px solid var(--n-ink);box-shadow:var(--n-shadow-paper);background-image:repeating-linear-gradient(0deg,#0000,#0000 30px,#ece2d299 30px 31px);border-radius:18px;padding:2.4rem 2.2rem;position:relative;overflow:hidden}.metode:before{content:"";background:var(--n-accent);width:1.5px;position:absolute;top:0;bottom:0;left:3rem}@supports (color:color-mix(in lab, red, red)){.metode:before{background:color-mix(in srgb, var(--n-accent) 35%, transparent)}}.metode .stamp-corner{border:2.5px solid var(--n-accent);width:58px;height:58px;color:var(--n-accent);opacity:.85;border-radius:10px;place-items:center;font-family:Noto Serif SC,serif;font-size:1.7rem;font-weight:700;display:grid;position:absolute;top:1.2rem;right:1.4rem;transform:rotate(7deg)}.metode ol{counter-reset:m;gap:1.5rem;margin:1.6rem 0 0 1.6rem;padding:0;list-style:none;display:grid}.metode ol li{counter-increment:m;grid-template-columns:auto 1fr;align-items:start;gap:1rem;display:grid}.metode ol li:before{content:"第" counter(m) "章";color:var(--n-accent);border:1.5px solid var(--n-accent);white-space:nowrap;border-radius:8px;padding:.3rem .5rem;font-family:Noto Serif SC,serif;font-size:.95rem;font-weight:700;transform:rotate(-2deg)}.metode ol b{margin-bottom:.25rem;font-family:Fraunces,serif;font-size:1.12rem;display:block}.metode ol span{color:var(--n-muted);max-width:64ch;font-size:.95rem;display:block}.metode h2{margin-left:1.6rem}.metode>p{color:var(--n-muted);max-width:60ch;margin-left:1.6rem}@media (max-width:720px){.metode{padding:1.8rem 1.2rem}.metode:before{left:1.6rem}.metode h2,.metode>p,.metode ol{margin-left:1rem}.metode ol li{grid-template-columns:1fr;gap:.4rem}.metode ol li:before{width:max-content}}.statement{text-align:center;padding-block:5rem 1.4rem;position:relative}.statement .display{font-size:clamp(1.9rem,4.8vw,3rem)}.colrow{justify-content:center;gap:1rem;margin-top:2.4rem;display:flex}.colrow .col{writing-mode:vertical-rl;letter-spacing:.5em;color:var(--n-muted);border-right:1px solid var(--n-line);padding-right:.6rem;font-family:Noto Serif SC,serif;font-size:1.25rem}.colrow .col.red{color:var(--n-accent)}@media (max-width:720px){.colrow .col:nth-child(n+4){display:none}}.steps{counter-reset:s;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;padding:0;list-style:none;display:grid}.steps li{counter-increment:s;background:var(--n-surface);border:1px solid var(--n-line);box-shadow:var(--n-shadow-paper);border-radius:16px;padding:1.4rem;position:relative}.steps li:before{content:counter(s, decimal-leading-zero);color:var(--n-accent);margin-bottom:.5rem;font-family:Fraunces,serif;font-size:1.6rem;font-weight:700;display:block}.steps li:after{content:"毕";border:2px solid var(--n-jade);width:30px;height:30px;color:var(--n-jade);opacity:.75;border-radius:8px;place-items:center;font-family:Noto Serif SC,serif;font-size:.95rem;display:grid;position:absolute;top:1.1rem;right:1.1rem;transform:rotate(6deg)}.steps li b{margin-bottom:.3rem;display:block}.steps li span{color:var(--n-muted);font-size:.93rem}.plans{text-align:left;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem;display:grid}.plan{background:var(--n-surface);border:1px solid var(--n-line);box-shadow:var(--n-shadow-paper);border-radius:18px;flex-direction:column;gap:.35rem;padding:1.5rem 1.4rem 1.6rem;display:flex;position:relative}.plan.hot{border-color:var(--n-ink)}.plan .flag{background:var(--n-accent);color:var(--n-on-accent);letter-spacing:.08em;box-shadow:0 1px 0 var(--n-accent-deep);border-radius:8px;padding:.22rem .7rem;font-size:.68rem;font-weight:800;position:absolute;top:-.8rem;left:1.1rem;transform:rotate(-2deg)}.plan.hot:after{content:"念";border:2.5px solid var(--n-accent);width:42px;height:42px;color:var(--n-accent);opacity:.85;border-radius:9px;place-items:center;font-family:Noto Serif SC,serif;font-size:1.35rem;font-weight:700;display:grid;position:absolute;top:.9rem;right:.9rem;transform:rotate(8deg)}.plan .name{font-size:.95rem;font-weight:800}.plan .was{color:var(--n-faint);margin-top:.2rem;margin-bottom:-.5rem;font-size:.85rem;font-weight:700;text-decoration:line-through}.plan .price{margin-top:.2rem;font-family:Fraunces,serif;font-size:1.7rem;font-weight:700}.plan .per{color:var(--n-muted);font-size:.82rem}.plan .save{box-sizing:border-box;background:var(--n-jadefill);width:max-content;max-width:100%;color:var(--n-jade);border-radius:8px;margin-top:.3rem;padding:.14rem .6rem;font-size:.72rem;font-weight:800;line-height:1.4;display:inline-block}.plan .gets{background:var(--n-fill);margin-top:.75rem;padding:.7rem .75rem .75rem}@supports (color:color-mix(in lab, red, red)){.plan .gets{background:color-mix(in srgb, var(--n-fill) 55%, transparent)}}.plan .gets{border:1px solid var(--n-line2);border-radius:12px}.plan .gets-title{letter-spacing:.12em;text-transform:uppercase;color:var(--n-faint);margin-bottom:.45rem;font-size:.64rem;font-weight:800;display:block}.plan .gets ul{color:var(--n-ink);gap:.4rem;margin:0;padding:0;font-size:.84rem;list-style:none;display:grid}.plan .gets li{flex-wrap:wrap;align-items:baseline;gap:.25rem .5rem;padding-left:1.15rem;line-height:1.45;display:flex;position:relative}.plan .gets li:before{content:"✓";color:var(--n-jade);font-size:.74rem;font-weight:800;position:absolute;top:.12em;left:0}.plan .gets .gt{flex:9rem}.plan .gets li.not{color:var(--n-muted)}.plan .gets li.not:before{content:"×";color:var(--n-faint);font-family:inherit;font-size:.9rem;font-weight:800;top:0}.plan .gets .after{color:var(--n-muted);margin:.55rem 0 0;font-size:.78rem;line-height:1.5}.plan ul{color:var(--n-muted);gap:.4rem;margin:.7rem 0 1rem;padding:0;font-size:.88rem;list-style:none;display:grid}.plan ul li{padding-left:1.3rem;position:relative}.plan ul li:before{content:"✓";color:var(--n-jade);font-size:.78rem;font-weight:800;position:absolute;top:.12em;left:0}.plan .more-toggle{color:var(--n-jade);text-align:left;cursor:pointer;background:0 0;border:none;width:max-content;margin:-.8rem 0 .75rem;padding:.3rem 0 .3rem 1.3rem;font-family:inherit;font-size:.82rem;font-weight:800;position:relative}.plan .more-toggle:before{content:"+";font-weight:800;position:absolute;top:.22rem;left:.2rem}.plan .more-toggle[aria-expanded=true]:before{content:"−"}.plan .more-toggle:hover{text-decoration:underline}.plan .buy{text-align:center;background:var(--n-surface);color:var(--n-accent-deep);border:1.5px solid var(--n-accent);cursor:pointer;border-radius:12px;margin-top:auto;padding:.75rem 0;font-family:inherit;font-size:.9rem;font-weight:800}.plan.hot .buy,.plan .buy:hover{background:var(--n-accent);color:var(--n-on-accent);border:1.5px solid var(--n-accent-deep);box-shadow:var(--n-shadow-press)}.plan .buy:active{box-shadow:none;transform:translateY(2px)}.pay-note{text-align:center;color:var(--n-muted);max-width:64ch;margin:1.6rem auto 0;font-size:.88rem}.paychips{flex-wrap:wrap;justify-content:center;gap:.5rem;margin-top:.8rem;display:flex}.paychips span{border:1px solid var(--n-line);background:var(--n-surface);color:var(--n-muted);border-radius:8px;padding:.25rem .8rem;font-size:.78rem;font-weight:700}.deal-banner{background:var(--n-surface);border:2px solid var(--n-accent);box-shadow:var(--n-shadow-paper);text-align:left;border-radius:18px;grid-template-columns:1fr auto;align-items:center;gap:1.5rem;margin-bottom:1.2rem;padding:1.6rem 1.5rem;display:grid;position:relative}.deal-banner .flag{background:var(--n-accent);color:var(--n-on-accent);letter-spacing:.08em;box-shadow:0 1px 0 var(--n-accent-deep);border-radius:8px;padding:.22rem .7rem;font-size:.68rem;font-weight:800;position:absolute;top:-.8rem;left:1.1rem;transform:rotate(-2deg)}.deal-banner .name{margin-bottom:.25rem;font-size:1.06rem;font-weight:800;display:block}.deal-banner .deal-rows{color:var(--n-muted);gap:.45rem;margin:.65rem 0 0;padding:0;font-size:.88rem;list-style:none;display:grid}.deal-banner .deal-rows li{flex-wrap:wrap;align-items:baseline;gap:.3rem .6rem;padding-left:1.3rem;display:flex;position:relative}.deal-banner .deal-rows li:before{content:"✓";color:var(--n-jade);font-size:.78rem;font-weight:800;position:absolute;top:.12em;left:0}.deal-banner .deal-rows .gt{flex:16rem}.deal-banner .deal-rows .gt b{color:var(--n-ink)}.deal-after{color:var(--n-ink);max-width:54ch;margin:.7rem 0 0;font-size:.85rem;font-weight:600}.deal-save{color:var(--n-jade);margin:.35rem 0 0;font-size:.82rem;font-weight:800}.dur{letter-spacing:.06em;white-space:nowrap;background:var(--n-acfill);color:var(--n-accent-deep);border:1px solid var(--n-accent);border-radius:7px;flex:none;padding:.1rem .5rem;font-size:.66rem;font-style:normal;font-weight:800;line-height:1.5}@supports (color:color-mix(in lab, red, red)){.dur{border:1px solid color-mix(in srgb, var(--n-accent) 45%, transparent)}}.dur.forever{background:var(--n-jadefill);color:var(--n-jade);border-color:var(--n-jade)}@supports (color:color-mix(in lab, red, red)){.dur.forever{border-color:color-mix(in srgb, var(--n-jade) 45%, transparent)}}.deal-side{text-align:right;flex-direction:column;align-items:flex-end;gap:.1rem;display:flex}.deal-side .was{color:var(--n-faint);font-size:.9rem;text-decoration:line-through}.deal-side .price{color:var(--n-accent-deep);font-family:Fraunces,serif;font-size:1.9rem;font-weight:700}.deal-side .per{color:var(--n-muted);font-size:.78rem}.deal-side .buy{background:var(--n-accent);color:var(--n-on-accent);border:1.5px solid var(--n-accent-deep);cursor:pointer;box-shadow:var(--n-shadow-press);white-space:nowrap;border-radius:10px;margin-top:.7rem;padding:.72rem 1.5rem;font-family:inherit;font-size:.9rem;font-weight:800}.deal-side .buy:hover{background:var(--n-accent-deep)}.deal-side .buy:active{box-shadow:none;transform:translateY(2px)}@media (max-width:640px){.deal-banner{grid-template-columns:1fr;gap:1rem;padding:1.5rem 1.25rem 1.4rem}.deal-side{text-align:left;align-items:flex-start}.deal-side .buy{width:100%}}.tbl-wrap{text-align:left;margin-top:2.6rem}.tbl-title{text-align:center;margin-bottom:.35rem;font-family:Fraunces,serif;font-size:1.15rem}.tbl-intro{text-align:center;color:var(--n-muted);max-width:58ch;margin:0 auto .9rem;font-size:.88rem}.tbl-intro b{color:var(--n-ink)}.tbl-scroll{-webkit-overflow-scrolling:touch;border:1.5px solid var(--n-ink);background:var(--n-surface);box-shadow:var(--n-shadow-paper);border-radius:12px;overflow-x:auto}table.ledger{border-collapse:separate;border-spacing:0;width:100%;min-width:640px;font-size:.88rem}.ledger th,.ledger td{border-bottom:1px solid var(--n-line);vertical-align:middle;padding:.68rem .9rem}.ledger thead th{border-bottom:1.5px solid var(--n-ink);font-family:Fraunces,serif;font-size:.95rem}.ledger thead .price{color:var(--n-muted);margin-top:.15rem;font-family:Plus Jakarta Sans,sans-serif;font-size:.7rem;font-weight:700;display:block}.ledger tbody tr:last-child td{border-bottom:none}.ledger td:first-child{color:var(--n-ink);min-width:190px;font-weight:600}.ledger td:not(:first-child),.ledger th:not(:first-child){text-align:center}.ledger .pro-col{background:var(--n-acfill)}@supports (color:color-mix(in lab, red, red)){.ledger .pro-col{background:color-mix(in srgb, var(--n-acfill) 42%, transparent)}}.ledger thead .pro-col{color:var(--n-accent-deep)}.ledger .ya{color:var(--n-jade);font-size:1rem;font-weight:800}.ledger .no{color:var(--n-faint)}.ledger .note{color:var(--n-muted);font-size:.78rem;font-weight:600}.ledger .pro-col .note{color:var(--n-accent-deep)}.ledger tbody tr:first-child td:nth-child(2){color:var(--n-ink);font-weight:700}.tbl-fine{text-align:center;color:var(--n-faint);margin-top:.7rem;font-size:.8rem}.tbl-hint{display:none}@media (max-width:640px){.tbl-hint{text-align:center;color:var(--n-faint);margin:-.4rem 0 .6rem;font-size:.78rem;display:block}.ledger th:first-child,.ledger td:first-child{z-index:1;background:var(--n-surface);box-shadow:2px 0 0 var(--n-line);min-width:128px;max-width:150px;font-size:.82rem;position:sticky;left:0}}.modal{z-index:100;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#2c271f73;justify-content:center;align-items:center;padding:1.2rem;display:none;position:fixed;inset:0}.modal[open],.modal.show{display:flex}.modal .box{background:var(--n-surface);border:1.5px solid var(--n-ink);border-radius:22px;width:100%;max-width:420px;padding:1.8rem;position:relative;box-shadow:0 24px 60px #2c271f33}.modal h3{margin-bottom:.3rem;font-size:1.35rem}.modal .pick{color:var(--n-muted);margin-bottom:1.2rem;font-size:.92rem}.modal label{margin-bottom:.35rem;font-size:.82rem;font-weight:700;display:block}.modal input{border:1px solid var(--n-line);width:100%;font:inherit;background:var(--n-bg);color:var(--n-ink);border-radius:10px;padding:.7rem .85rem}.modal input:focus{outline:2px solid var(--n-accent);border-color:var(--n-accent)}.modal .go{background:var(--n-accent);width:100%;color:var(--n-on-accent);cursor:pointer;box-shadow:var(--n-shadow-press);border:none;border-radius:10px;margin-top:1rem;padding:.85rem;font-family:inherit;font-size:.95rem;font-weight:800}.modal .go:hover{background:var(--n-accent-deep)}.modal .go:active{box-shadow:none;transform:translateY(2px)}.modal .go:disabled{opacity:.6;cursor:progress}.modal .fine{color:var(--n-faint);text-align:center;margin-top:.9rem;font-size:.78rem}.modal .msg{border-radius:8px;margin-top:.9rem;padding:.6rem .75rem;font-size:.86rem;display:none}.modal .msg.err{background:var(--n-acfill);color:var(--n-accent-deep);display:block}.modal .msg.soon{background:var(--n-fill);color:var(--n-muted);display:block}.modal .x{color:var(--n-faint);cursor:pointer;background:0 0;border:none;font-size:1.4rem;line-height:1;position:absolute;top:.9rem;right:1rem}.faq-head{justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1.4rem;display:flex}.faq-head img{width:96px;height:auto}.faq details{background:var(--n-surface);border:1px solid var(--n-line);border-radius:10px;margin-bottom:.7rem;padding:1rem 1.25rem}.faq summary{cursor:pointer;justify-content:space-between;gap:1rem;font-weight:600;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";color:var(--n-accent);font-weight:800}.faq details[open] summary:after{content:"–"}.faq details p{color:var(--n-muted);max-width:68ch;margin-top:.6rem;font-size:.95rem}.faq a{color:var(--n-accent)}.pro-card{background:var(--n-prosurface);color:var(--n-proink);border-radius:12px;grid-template-columns:1fr auto;align-items:center;gap:1.6rem;padding:2.2rem;display:grid;box-shadow:0 18px 44px #2c271f4d}.pro-card .pill{background:var(--n-gold);color:var(--n-prosurface);border-radius:8px;margin-bottom:.7rem;padding:.18rem .85rem;font-size:.8rem;font-weight:800;display:inline-block;transform:rotate(-1.5deg)}.pro-card h2{color:var(--n-proink);margin-bottom:.5rem;font-size:1.7rem}.pro-card p{color:var(--n-proink)}@supports (color:color-mix(in lab, red, red)){.pro-card p{color:color-mix(in srgb, var(--n-proink) 72%, transparent)}}.pro-card p{max-width:52ch}.pro-card img{width:130px;height:auto}.closing{text-align:center;padding-block:4.5rem 4rem;position:relative}.closing img{width:120px;margin-bottom:1rem}.closing .display{margin-bottom:.6rem}@media (max-width:720px){.pro-card{text-align:center;grid-template-columns:1fr}.pro-card img{margin:0 auto}}footer{border-top:1.5px solid var(--n-ink);color:var(--n-muted);background:var(--n-surface);padding:2.2rem 0 2.8rem;font-size:.88rem}footer .row{flex-wrap:wrap;gap:1.2rem;margin-bottom:.8rem;display:flex}footer a{color:var(--n-ink);border-bottom:1px solid var(--n-line);text-decoration:none}footer a:hover{color:var(--n-accent);border-color:var(--n-accent)}.reveal{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(18px)}.reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transition:none;transform:none}html{scroll-behavior:auto}}.demo{background:var(--n-surface);border:1px solid var(--n-line);text-align:center;max-width:430px;box-shadow:var(--n-shadow-paper);border-radius:18px;margin:0 auto;padding:1.4rem 1.4rem 1.3rem}.demo-kicker{letter-spacing:.14em;color:var(--n-faint);text-transform:uppercase;justify-content:center;align-items:center;gap:.6rem;margin-bottom:.4rem;font-size:.68rem;font-weight:800;display:flex}.demo-repeat{background:var(--n-acfill);color:var(--n-accent-deep);letter-spacing:.08em;border-radius:7px;padding:.1rem .5rem;font-size:.62rem}.demo-word{justify-content:center;align-items:center;gap:.7rem;display:flex}.demo-hanzi{color:var(--n-ink);margin:.15rem 0 .1rem;font-size:3.4rem;line-height:1.15}.demo-audio{border:1.5px solid var(--n-accent);background:var(--n-acfill);width:40px;height:40px;color:var(--n-accent-deep);cursor:pointer;border-radius:50%;place-items:center;padding-left:2px;font-size:.9rem;display:grid}.demo-audio:hover{background:var(--n-accent);color:var(--n-on-accent)}.demo-pinyin{color:var(--n-jade);margin-top:.15rem;font-size:1.05rem;font-weight:700}.demo-gloss{color:var(--n-muted);margin-bottom:.9rem}.demo-ask{color:var(--n-muted);margin:.5rem 0 .8rem;font-size:.88rem}.demo-reveal{background:var(--n-accent);color:var(--n-on-accent);border:1.5px solid var(--n-accent-deep);cursor:pointer;box-shadow:var(--n-shadow-press);border-radius:12px;margin-bottom:.4rem;padding:.7rem 1.5rem;font-family:inherit;font-size:.92rem;font-weight:800}.demo-reveal:hover{background:var(--n-accent-deep)}.demo-reveal:active{box-shadow:none;transform:translateY(2px)}.demo-grades button{text-align:center;border:1px solid var(--n-line);color:var(--n-muted);background:var(--n-surface);cursor:pointer;border-radius:8px;padding:.5rem 0;font-family:inherit;font-size:.72rem;font-weight:700}.demo-grades button:hover{border-color:var(--n-accent);color:var(--n-accent-deep);background:var(--n-acfill)}.demo-grades button.good{background:var(--n-jadefill);border-color:var(--n-jade);color:var(--n-jade)}.demo-grades button.good:hover{background:var(--n-jade);color:var(--n-on-accent);border-color:var(--n-jade)}.demo-hint{color:var(--n-faint);margin-top:.6rem;font-size:.75rem}.demo-stamps{justify-content:center;gap:.35rem;margin-top:.9rem;display:flex}.demo-stamps i{border:1.5px dashed var(--n-faint);width:26px;height:26px;color:var(--n-faint);border-radius:7px;place-items:center;font-size:.72rem;font-style:normal;display:grid}.demo-stamps i.done{border-style:solid;border-color:var(--n-accent);color:var(--n-accent);background:var(--n-acfill);font-family:Noto Serif SC,serif;transform:rotate(-3deg)}.demo-done-zi{color:var(--n-accent);margin:.2rem 0 .4rem;font-size:2.6rem}.demo-note{color:var(--n-muted);max-width:40ch;margin:0 auto .9rem;font-size:.92rem}.demo-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:.7rem;display:flex}.demo-cta{background:var(--n-accent);color:var(--n-on-accent);border:1.5px solid var(--n-accent-deep);border-radius:12px;padding:.7rem 1.3rem;font-size:.92rem;font-weight:800;text-decoration:none;display:inline-block}.demo-again{color:var(--n-faint);cursor:pointer;background:0 0;border:none;font-family:inherit;font-size:.85rem;font-weight:700;text-decoration:underline}.demo-store-note{color:var(--n-faint);margin:1rem 0 .5rem;font-size:.78rem}.demo-stores{justify-content:center}.demo-stores .store-badge{transform:scale(.92)}.ltest{background:var(--n-surface);border:1px solid var(--n-line);text-align:center;border-radius:18px;max-width:430px;margin:0 auto;padding:1.6rem 1.4rem 1.4rem}.ltest-kicker{letter-spacing:.14em;color:var(--n-faint);justify-content:center;align-items:center;gap:.6rem;margin-bottom:.6rem;font-size:.68rem;font-weight:800;display:flex}.ltest-band{background:var(--n-jadefill);color:var(--n-jade);letter-spacing:.08em;border-radius:7px;padding:.1rem .5rem;font-size:.62rem}.ltest-lead{color:var(--n-muted);margin-bottom:1rem;font-size:.92rem}.ltest-listen{background:var(--n-acfill);color:var(--n-accent-deep);border:1.5px solid var(--n-accent);cursor:pointer;border-radius:12px;align-items:center;gap:.5rem;margin:.5rem 0 .6rem;padding:.8rem 1.4rem;font-family:inherit;font-size:1rem;font-weight:800;display:inline-flex}.ltest-listen:hover{background:var(--n-accent);color:var(--n-on-accent)}.ltest-start,.ltest-cta{background:var(--n-accent);color:var(--n-on-accent);border:1.5px solid var(--n-accent-deep);cursor:pointer;border-radius:12px;padding:.7rem 1.3rem;font-family:inherit;font-size:.92rem;font-weight:800;text-decoration:none;display:inline-block}.ltest-hanzi{color:var(--n-ink);margin:.2rem 0 .1rem;font-size:3rem;line-height:1.15}.ltest-pinyin{color:var(--n-jade);margin-bottom:.7rem;font-weight:700}.ltest-ask{color:var(--n-muted);margin-bottom:.7rem;font-size:.85rem}.ltest-options{gap:.5rem;display:grid}.ltest-options button{color:var(--n-ink);background:var(--n-fill);border:1px solid var(--n-line);cursor:pointer;border-radius:12px;padding:.65rem .8rem;font-family:inherit;font-size:.95rem;font-weight:700}.ltest-options button:hover{background:var(--n-surface);border-color:var(--n-accent);color:var(--n-accent-deep)}.ltest-track{background:var(--n-fill);border-radius:4px;height:6px;margin-top:1rem;overflow:hidden}.ltest-track i{background:var(--n-jade);border-radius:4px;height:100%;transition:width .25s;display:block}.ltest-level{color:var(--n-accent-deep);margin:.1rem 0;font-family:Fraunces,serif;font-size:1.9rem;font-weight:800}.ltest-score{color:var(--n-faint);margin-bottom:.7rem;font-size:.85rem;font-weight:700}.ltest-note{color:var(--n-muted);margin-bottom:.6rem;font-size:.92rem}.ltest-rec{color:var(--n-ink);margin-bottom:1rem;font-size:.92rem}.ltest-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:.7rem;display:flex}.ltest-again{color:var(--n-faint);cursor:pointer;background:0 0;border:none;font-family:inherit;font-size:.85rem;font-weight:700;text-decoration:underline}.ltest-fine{color:var(--n-faint);margin-top:.9rem;font-size:.75rem}.centered-page{text-align:center;place-items:center;min-height:100vh;padding:1.4rem;display:grid}.tk-card{background:var(--n-surface);border:1px solid var(--n-line);border-radius:24px;max-width:460px;padding:2.6rem 2rem;box-shadow:0 24px 60px #2c271f1f}.tk-card .mark{width:96px;margin:0 auto 1.2rem}.tk-card h1{margin-bottom:.6rem;font-family:Fraunces,serif;font-size:1.7rem;font-weight:700}.tk-card p{color:var(--n-muted);margin-bottom:.6rem}.tk-steps{text-align:left;counter-reset:s;gap:.7rem;margin:1.4rem 0;display:grid}.tk-steps li{padding-left:1.9rem;font-size:.95rem;list-style:none;position:relative}.tk-steps li b{color:var(--n-ink)}.tk-steps li:before{counter-increment:s;content:counter(s);background:var(--n-jade);width:1.35rem;height:1.35rem;color:var(--n-on-accent);border-radius:50%;place-items:center;font-size:.72rem;font-weight:800;display:grid;position:absolute;top:0;left:0}.tk-cta{background:var(--n-accent);color:var(--n-on-accent);border-radius:16px;margin-top:.4rem;padding:.85rem 1.6rem;font-weight:800;text-decoration:none;display:inline-block}.tk-cta:hover{background:var(--n-accent-deep)}.tk-home{color:var(--n-muted);margin-top:1rem;font-size:.85rem;display:block}.tk-auth{gap:.6rem;margin:1.2rem 0 .9rem;display:grid}.tk-card .go{background:var(--n-accent);width:100%;color:var(--n-on-accent);cursor:pointer;box-shadow:var(--n-shadow-press);border:none;border-radius:10px;padding:.85rem;font-family:inherit;font-size:.95rem;font-weight:800}.tk-card .go:hover{background:var(--n-accent-deep)}.tk-card .go:active{box-shadow:none;transform:translateY(2px)}.tk-card .go.alt{background:var(--n-surface);color:var(--n-ink);border:1.5px solid var(--n-ink);box-shadow:none}.tk-card .go.alt:hover{background:var(--n-fill)}.tk-copy{color:var(--n-muted);cursor:pointer;background:0 0;border:none;margin:.2rem auto .8rem;font-family:inherit;font-size:.8rem;text-decoration:underline;display:block}.stores{flex-wrap:wrap;justify-content:center;gap:.7rem;margin:1.1rem 0 .2rem;display:flex}.store-badge{color:#fff;background:#000;border:1px solid #a6a6a6;border-radius:12px;align-items:center;gap:.8rem;min-width:200px;padding:.7rem 1.25rem .7rem 1.05rem;text-decoration:none;display:flex}.store-badge svg{flex:none;width:33px;height:33px}.store-badge .t{text-align:left;line-height:1.18}.store-badge .t small{letter-spacing:.06em;text-transform:uppercase;opacity:.75;font-size:.68rem;font-weight:600;display:block}.store-badge .t b{font-size:1.22rem;font-weight:700}a.store-badge:hover{background:#1a1a1a}.store-badge.soon{opacity:.55;cursor:default}.fail-card{background:var(--n-surface);border:1px solid var(--n-line);border-radius:24px;max-width:440px;padding:2.6rem 2rem;box-shadow:0 24px 60px #2c271f1f}.fail-card .mark{width:88px;margin:0 auto 1.2rem}.fail-card h1{margin-bottom:.6rem;font-family:Fraunces,serif;font-size:1.6rem;font-weight:700}.fail-card p{color:var(--n-muted);margin-bottom:1rem}.nf-zi{color:var(--n-accent);font-family:Noto Serif SC,serif;font-size:4.5rem}.nf h1{margin:.6rem 0;font-family:Fraunces,serif;font-size:1.5rem;font-weight:700}.nf p{color:var(--n-muted);margin-bottom:1.2rem}.nf a{background:var(--n-accent);color:var(--n-on-accent);border-radius:16px;padding:.8rem 1.5rem;font-weight:800;text-decoration:none;display:inline-block}.nf a:hover{background:var(--n-accent-deep)}.legal{max-width:760px;margin:0 auto;padding:2.5rem 1.4rem 4rem;line-height:1.7}.legal h1,.legal h2{font-family:Fraunces,Georgia,serif;font-weight:600}.legal h1{margin:1.2rem 0 .4rem;font-size:1.9rem}.legal h2{border-bottom:1.5px solid var(--n-ink);margin:2rem 0 .6rem;padding-bottom:.35rem;font-size:1.15rem}.legal p,.legal li{color:var(--n-ink);font-size:.95rem}.legal ul{margin:.5rem 0 1rem;padding-left:1.3rem}.legal li{margin-bottom:.35rem}.legal .muted{color:var(--n-muted)}.legal .stamp-note{border-left:3px solid var(--n-accent);color:var(--n-muted);margin:1rem 0;padding:.4rem 0 .4rem .8rem;font-size:.9rem}.legal a{color:var(--n-accent)}.legal-brand{color:inherit;align-items:center;gap:.6rem;text-decoration:none;display:flex}.legal-brand img{width:34px;height:34px}.legal-brand b{font-family:Fraunces,serif;font-size:1.15rem}.legal footer{border-top:1.5px solid var(--n-ink);color:var(--n-muted);background:0 0;margin-top:3rem;padding-top:1.2rem;font-size:.85rem}.legal footer a{margin-right:1.1rem}:root{--background:#fff;--foreground:#0a0a0a;--card:#fff;--card-foreground:#0a0a0a;--popover:#fff;--popover-foreground:#0a0a0a;--primary:#171717;--primary-foreground:#fafafa;--secondary:#f5f5f5;--secondary-foreground:#171717;--muted:#f5f5f5;--muted-foreground:#737373;--accent:#f5f5f5;--accent-foreground:#171717;--destructive:#e40014;--border:#e5e5e5;--input:#e5e5e5;--ring:#a1a1a1;--chart-1:#d4d4d4;--chart-2:#737373;--chart-3:#525252;--chart-4:#404040;--chart-5:#262626;--radius:.625rem;--sidebar:#fafafa;--sidebar-foreground:#0a0a0a;--sidebar-primary:#171717;--sidebar-primary-foreground:#fafafa;--sidebar-accent:#f5f5f5;--sidebar-accent-foreground:#171717;--sidebar-border:#e5e5e5;--sidebar-ring:#a1a1a1}@supports (color:lab(0% 0 0)){:root{--background:lab(100% 0 0);--foreground:lab(2.75381% 0 0);--card:lab(100% 0 0);--card-foreground:lab(2.75381% 0 0);--popover:lab(100% 0 0);--popover-foreground:lab(2.75381% 0 0);--primary:lab(7.78201% -.0000149012 0);--primary-foreground:lab(98.26% 0 0);--secondary:lab(96.52% -.0000298023 .0000119209);--secondary-foreground:lab(7.78201% -.0000149012 0);--muted:lab(96.52% -.0000298023 .0000119209);--muted-foreground:lab(48.496% 0 0);--accent:lab(96.52% -.0000298023 .0000119209);--accent-foreground:lab(7.78201% -.0000149012 0);--destructive:lab(48.4493% 77.4328 61.5452);--border:lab(90.952% 0 -.0000119209);--input:lab(90.952% 0 -.0000119209);--ring:lab(66.128% -.0000298023 .0000119209);--chart-1:lab(84.92% 0 -.0000119209);--chart-2:lab(48.496% 0 0);--chart-3:lab(34.924% 0 0);--chart-4:lab(27.036% 0 0);--chart-5:lab(15.204% 0 -.00000596046);--sidebar:lab(98.26% 0 0);--sidebar-foreground:lab(2.75381% 0 0);--sidebar-primary:lab(7.78201% -.0000149012 0);--sidebar-primary-foreground:lab(98.26% 0 0);--sidebar-accent:lab(96.52% -.0000298023 .0000119209);--sidebar-accent-foreground:lab(7.78201% -.0000149012 0);--sidebar-border:lab(90.952% 0 -.0000119209);--sidebar-ring:lab(66.128% -.0000298023 .0000119209)}}.dark{--background:#0a0a0a;--foreground:#fafafa;--card:#171717;--card-foreground:#fafafa;--popover:#171717;--popover-foreground:#fafafa;--primary:#e5e5e5;--primary-foreground:#171717;--secondary:#262626;--secondary-foreground:#fafafa;--muted:#262626;--muted-foreground:#a1a1a1;--accent:#262626;--accent-foreground:#fafafa;--destructive:#ff6568;--border:#ffffff1a;--input:#ffffff26;--ring:#737373;--chart-1:#d4d4d4;--chart-2:#737373;--chart-3:#525252;--chart-4:#404040;--chart-5:#262626;--sidebar:#171717;--sidebar-foreground:#fafafa;--sidebar-primary:#1447e6;--sidebar-primary-foreground:#fafafa;--sidebar-accent:#262626;--sidebar-accent-foreground:#fafafa;--sidebar-border:#ffffff1a;--sidebar-ring:#737373}@supports (color:lab(0% 0 0)){.dark{--background:lab(2.75381% 0 0);--foreground:lab(98.26% 0 0);--card:lab(7.78201% -.0000149012 0);--card-foreground:lab(98.26% 0 0);--popover:lab(7.78201% -.0000149012 0);--popover-foreground:lab(98.26% 0 0);--primary:lab(90.952% 0 -.0000119209);--primary-foreground:lab(7.78201% -.0000149012 0);--secondary:lab(15.204% 0 -.00000596046);--secondary-foreground:lab(98.26% 0 0);--muted:lab(15.204% 0 -.00000596046);--muted-foreground:lab(66.128% -.0000298023 .0000119209);--accent:lab(15.204% 0 -.00000596046);--accent-foreground:lab(98.26% 0 0);--destructive:lab(63.7053% 60.745 31.3109);--border:lab(100% 0 0/.1);--input:lab(100% 0 0/.15);--ring:lab(48.496% 0 0);--chart-1:lab(84.92% 0 -.0000119209);--chart-2:lab(48.496% 0 0);--chart-3:lab(34.924% 0 0);--chart-4:lab(27.036% 0 0);--chart-5:lab(15.204% 0 -.00000596046);--sidebar:lab(7.78201% -.0000149012 0);--sidebar-foreground:lab(98.26% 0 0);--sidebar-primary:lab(36.9089% 35.0961 -85.6872);--sidebar-primary-foreground:lab(98.26% 0 0);--sidebar-accent:lab(15.204% 0 -.00000596046);--sidebar-accent-foreground:lab(98.26% 0 0);--sidebar-border:lab(100% 0 0/.1);--sidebar-ring:lab(48.496% 0 0)}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@keyframes marquee{0%{transform:translate(0)}to{transform:translateX(calc(-100% - var(--gap)))}}@keyframes marquee-vertical{0%{transform:translateY(0)}to{transform:translateY(calc(-100% - var(--gap)))}}
