html,body{width:100%;height:100%}input::-ms-clear{display:none}input::-ms-reveal{display:none}html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:#0000;font-family:sans-serif;line-height:1.15}body{margin:0}[tabindex="-1"]:focus{outline:none}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:0;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}address{font-style:normal;line-height:inherit;margin-bottom:1em}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}pre,code,kbd,samp{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font-size:1em}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{text-align:left;caption-side:bottom;padding-top:.75em;padding-bottom:.3em}input,button,select,optgroup,textarea{color:inherit;font-size:inherit;font-family:inherit;line-height:inherit;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner{border-style:none;padding:0}[type=button]::-moz-focus-inner{border-style:none;padding:0}[type=reset]::-moz-focus-inner{border-style:none;padding:0}[type=submit]::-moz-focus-inner{border-style:none;padding:0}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{resize:vertical;overflow:auto}fieldset{border:0;min-width:0;margin:0;padding:0}legend{width:100%;max-width:100%;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal;margin-bottom:.5em;padding:0;display:block}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button{height:auto}[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}:root{--color-bg-base:#ece9e0;--color-bg-raised:#f5f3ec;--color-bg-overlay:#fdfcf8;--color-bg-inverted:#141413;--color-text-primary:#141413;--color-text-secondary:#6b6860;--color-text-muted:#b0aea5;--color-text-inverted:#faf9f5;--color-text-link:#c96442;--color-border-default:#d8d5cc;--color-border-subtle:#e8e6dc;--color-border-strong:#9b9890;--color-accent-orange:#d97757;--color-accent-warm:#c96442;--color-accent-blue:#6a9bcc;--color-accent-green:#788c5d;--color-accent-sand:#c4b99a;--color-success:#6b8f47;--color-warning:#c9943a;--color-error:#c0453a;--color-info:#5a89b8;--font-display:"PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", sans-serif;--font-heading:"PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", sans-serif;--font-body:"PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", sans-serif;--font-mono:"SF Mono", "Menlo", "Consolas", "Courier New", monospace;--weight-light:300;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--font-display-cn:"PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", sans-serif;--font-body-cn:"PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", sans-serif;--font-heading-cn:"PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", sans-serif;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-md:1.125rem;--text-lg:1.25rem;--text-xl:1.5rem;--text-2xl:2rem;--text-3xl:2.75rem;--text-4xl:3.5rem;--text-5xl:4.5rem;--leading-tight:1.15;--leading-snug:1.35;--leading-normal:1.55;--leading-loose:1.75;--leading-cn-tight:1.4;--leading-cn-snug:1.6;--leading-cn-normal:1.75;--leading-cn-loose:1.9;--text-cn-sm:.9375rem;--text-cn-base:1rem;--text-cn-md:1.125rem;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--space-24:96px;--space-32:128px;--space-40:160px;--max-width-prose:680px;--max-width-text:860px;--max-width-layout:1200px;--max-width-full:1440px;--radius-sm:4px;--radius-md:8px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--ease-default:cubic-bezier(.16, 1, .3, 1);--ease-bounce:cubic-bezier(.34, 1.56, .64, 1);--ease-gentle:cubic-bezier(.4, 0, .2, 1);--duration-fast:.15s;--duration-normal:.25s;--duration-slow:.4s}:root[data-theme=dark]{--color-bg-base:#1a1916;--color-bg-raised:#222119;--color-bg-overlay:#2c2b26;--color-bg-inverted:#f5f3ec;--color-text-primary:#eae7dc;--color-text-secondary:#9d9a91;--color-text-muted:#5c5a54;--color-text-inverted:#141413;--color-border-default:#3a3830;--color-border-subtle:#2e2d27}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--color-bg-base:#1a1916;--color-bg-raised:#222119;--color-bg-overlay:#2c2b26;--color-bg-inverted:#f5f3ec;--color-text-primary:#eae7dc;--color-text-secondary:#9d9a91;--color-text-muted:#5c5a54;--color-text-inverted:#141413;--color-border-default:#3a3830;--color-border-subtle:#2e2d27}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background-color:var(--color-bg-base);color:var(--color-text-primary);font-family:var(--font-heading);font-size:var(--text-base);line-height:var(--leading-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}img,video,svg{max-width:100%;display:block}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word;margin:0}ul,ol{margin:0;padding:0;list-style:none}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit;appearance:none;background:0 0;border:none;outline:none}.page-container{width:100%;max-width:var(--max-width-layout);padding-inline:clamp(var(--space-6), 5vw, var(--space-16));margin:0 auto}.section-hero{padding-block:clamp(80px,12vw,160px)}.section-content{padding-block:clamp(64px,8vw,128px)}.section-tight{padding-block:clamp(40px,6vw,80px)}:focus-visible{outline:2px solid var(--color-accent-orange);outline-offset:3px;border-radius:var(--radius-sm)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@keyframes fadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.reveal{opacity:0;animation:fadeUp var(--duration-slow) var(--ease-default) forwards}.reveal:first-child{animation-delay:0s}.reveal:nth-child(2){animation-delay:80ms}.reveal:nth-child(3){animation-delay:.16s}.reveal:nth-child(4){animation-delay:.24s}.reveal:nth-child(5){animation-delay:.32s}:root{--shadow-card:0 2px 12px #14141312;--shadow-elevated:0 8px 32px #14141314;--shadow-btn:0 4px 12px #d977574d;--font-ui:var(--font-heading);--color-bg-surface:var(--color-bg-raised);--color-bg-elevated:var(--color-bg-overlay);--color-bg-sidebar:#f0ede4;--color-bg-input:var(--color-bg-overlay);--color-border:var(--color-border-default);--color-accent:var(--color-accent-orange);--color-accent-dim:#d977571f;--color-accent-glow:#d977572e;--color-success-dim:#6b8f471f;--color-success-glow:#6b8f471f;--color-warning-dim:#c9943a1f;--color-error-dim:#c0453a1f;--color-text-accent:var(--color-accent-warm);--color-text-success:var(--color-success);--color-text-error:var(--color-error);--color-text-warning:var(--color-warning);--color-text-disabled:var(--color-text-muted);--color-numeric:var(--color-accent-blue)}:root[data-theme=dark]{--color-bg-sidebar:#1e1d19}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--color-bg-sidebar:#1e1d19}}:root,[data-theme=light]{--bg:#ece9e0;--bg-raised:#f5f3ec;--bg-overlay:#fdfcf8;--ink:#141413;--ink-2:#6b6860;--ink-3:#b0aea5;--hair:#e8e6dc;--rule:#d8d5cc;--invert-bg:#141413;--invert-ink:#faf9f5;--invert-ink-2:#a9a69c;--invert-hair:#2b2a26}[data-theme=dark]{--bg:#1a1916;--bg-raised:#222119;--bg-overlay:#2a2822;--ink:#eae7dc;--ink-2:#a9a69c;--ink-3:#6b6860;--hair:#2e2d27;--rule:#3a3830;--invert-bg:#faf9f5;--invert-ink:#141413;--invert-ink-2:#4f4c45;--invert-hair:#d8d5cc}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#1a1916;--bg-raised:#222119;--bg-overlay:#2a2822;--ink:#eae7dc;--ink-2:#a9a69c;--ink-3:#6b6860;--hair:#2e2d27;--rule:#3a3830;--invert-bg:#faf9f5;--invert-ink:#141413;--invert-ink-2:#4f4c45;--invert-hair:#d8d5cc}}html,body{background:var(--bg);color:var(--ink);font-family:var(--font-heading-cn);transition:background var(--duration-slow) var(--ease-default), color var(--duration-slow) var(--ease-default)}:focus-visible{outline:2px solid var(--color-accent-orange);outline-offset:3px}.skip-link{z-index:80;background:var(--color-accent-orange);color:#fff;font-family:var(--font-heading);transition:transform var(--duration-fast) var(--ease-default);border-radius:999px;padding:10px 16px;font-size:.9rem;position:absolute;top:12px;left:16px;transform:translateY(-160%)}.skip-link:focus{transform:none}[data-theme=dark] body:before{background:radial-gradient(60% 50% at 15% 0,#d977571f 0%,#0000 55%)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) body:before{background:radial-gradient(60% 50% at 15% 0,#d977571f 0%,#0000 55%)}}.display{font-family:var(--font-display-cn);font-weight:var(--weight-regular);line-height:var(--leading-cn-tight);letter-spacing:-.01em}.display em{color:var(--color-accent-warm);font-style:normal}.eyebrow{font-family:var(--font-heading);font-size:var(--text-xs);font-weight:var(--weight-medium);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);align-items:center;gap:10px;display:inline-flex}.eyebrow:before{content:"";background:var(--rule);width:24px;height:1px}.nav{z-index:50;-webkit-backdrop-filter:saturate(180%)blur(14px);background:color-mix(in srgb, var(--bg) 80%, transparent);transition:border-color var(--duration-normal) var(--ease-default);border-bottom:1px solid #0000;position:sticky;top:0}.nav.is-scrolled{border-bottom-color:var(--hair)}.nav-row{max-width:var(--max-width-full);padding:16px clamp(var(--space-6), 5vw, var(--space-16));grid-template-columns:auto 1fr auto;align-items:center;gap:24px;margin:0 auto;display:grid}.brand{color:var(--ink);align-items:center;gap:10px;display:inline-flex}.brand-mark{background:var(--color-accent-orange);color:#fff;width:32px;height:32px;transition:transform var(--duration-normal) var(--ease-bounce);border-radius:50%;place-items:center;display:grid;box-shadow:0 4px 10px #d9775747}.brand:hover .brand-mark{transform:rotate(-8deg)scale(1.05)}.brand-mark svg{width:16px;height:16px}.brand-name{font-family:var(--font-heading);letter-spacing:-.01em;white-space:nowrap;font-size:1.15rem;font-style:normal}.nav-links{justify-self:center;gap:4px;display:flex}.nav-links a{font-family:var(--font-heading);color:var(--ink-2);transition:color var(--duration-fast) var(--ease-default), background var(--duration-fast) var(--ease-default);border-radius:999px;padding:8px 14px;font-size:.88rem;font-weight:500}.nav-links a:hover{color:var(--ink);background:var(--bg-raised)}.nav-actions{align-items:center;gap:8px;display:flex}.icon-btn{border:1px solid var(--rule);width:44px;height:44px;color:var(--ink-2);cursor:pointer;transition:all var(--duration-fast) var(--ease-default);background:0 0;border-radius:999px;place-items:center;display:grid}.icon-btn:hover{color:var(--ink);border-color:var(--color-accent-orange);background:var(--bg-raised)}@media (width<=820px){.nav-links{display:none}}.btn{font-family:var(--font-heading);letter-spacing:.01em;cursor:pointer;transition:transform var(--duration-fast) var(--ease-default), background var(--duration-normal) var(--ease-default), color var(--duration-normal) var(--ease-default), box-shadow var(--duration-normal) var(--ease-default);border:1px solid #0000;border-radius:999px;align-items:center;gap:10px;padding:13px 22px;font-size:.95rem;font-weight:500;display:inline-flex}.btn svg{width:16px;height:16px}.btn-ghost{color:var(--ink);border-color:var(--rule);background:0 0}.btn-ghost:hover{border-color:var(--ink);background:var(--bg-raised);transform:translateY(-2px)}.hero{align-items:center;min-height:calc(100svh - 72px);padding-block:clamp(24px,3vw,40px) clamp(32px,4vw,56px);display:flex}.hero-grid{width:100%;max-width:var(--max-width-full);padding-inline:clamp(var(--space-6), 5vw, var(--space-16));grid-template-columns:1fr 1fr;align-items:stretch;gap:clamp(32px,5vw,64px);margin:0 auto;display:grid}.hero-copy{flex-direction:column;justify-content:center;min-width:0;display:flex}.hero-kicker-row{flex-wrap:wrap;align-items:center;gap:10px 12px;display:flex}.hero-free{background:var(--color-accent-orange);color:#fff;letter-spacing:.06em;border-radius:999px;align-items:center;min-height:28px;padding:0 10px;font-size:.82rem;font-weight:600;display:inline-flex}@media (width<=960px){.hero{min-height:0;display:block}.hero-grid{grid-template-columns:1fr}}.hero-title{margin-top:var(--space-6);margin-bottom:var(--space-5);font-size:clamp(2.2rem,5.4vw,4.2rem)}.hero-title .line-2{margin-left:clamp(0px,3vw,36px);display:block}.hero-lead{font-family:var(--font-body-cn);color:var(--ink-2);font-size:clamp(1.02rem,1.4vw,1.18rem);line-height:var(--leading-cn-loose);max-width:28em;margin-bottom:var(--space-8)}.hero-cta{flex-wrap:wrap;gap:12px;display:flex}.er-stage{background:var(--bg-raised);border:1px solid var(--hair);border-radius:var(--radius-xl);width:100%;min-width:0;height:min(520px,100svh - 160px);min-height:320px;box-shadow:var(--shadow-elevated);position:relative;overflow:hidden}.er-stage:after{content:"";z-index:0;pointer-events:none;opacity:.4;background-image:radial-gradient(circle, var(--rule) .7px, transparent .8px);background-size:18px 18px;position:absolute;inset:0}@media (width<=960px){.er-stage{height:min(360px,48svh);min-height:240px}}@media (width<=879px){.hero{min-height:0;padding-block:16px 24px;display:block}.hero-grid{grid-template-columns:1fr;gap:20px;padding-inline:16px}.hero-title{margin-top:8px;margin-bottom:12px;font-size:clamp(1.7rem,8.4vw,2.15rem)}.hero-title .line-2{margin-left:0}.hero-lead{max-width:none;margin-bottom:16px;font-size:.95rem}.hero-cta-btn.ant-btn{width:100%}.er-stage{height:260px;min-height:220px}}.er-chip{z-index:2;pointer-events:none;font-family:var(--font-heading);letter-spacing:.08em;color:var(--ink-2);background:color-mix(in srgb, var(--bg-overlay) 85%, transparent);border:1px solid var(--hair);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:999px;align-items:center;gap:8px;padding:6px 12px;font-size:.72rem;font-weight:500;display:inline-flex;position:absolute;top:14px;left:14px}.er-chip:before{content:"";background:var(--color-accent-orange);border-radius:50%;width:6px;height:6px;animation:1.8s ease-in-out infinite blink;box-shadow:0 0 0 3px #d9775738}@keyframes blink{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.85)}}.er-reset{z-index:2;background:color-mix(in srgb, var(--bg-overlay) 85%, transparent);border:1px solid var(--hair);width:44px;height:44px;color:var(--ink-2);cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:color var(--duration-fast) var(--ease-default), border-color var(--duration-fast) var(--ease-default), transform .5s var(--ease-default);border-radius:50%;place-items:center;display:grid;position:absolute;top:14px;right:14px}.er-reset:hover{color:var(--color-accent-warm);border-color:var(--color-accent-orange);transform:rotate(-180deg)}.er-reset:active{transform:rotate(-360deg)}.er-reset>svg{fill:currentColor;width:13px;height:13px;display:block}#hero-er{z-index:1;opacity:1;width:100%;min-width:0;height:100%;min-height:0;transition:opacity .26s var(--ease-default);position:absolute;inset:0}#hero-er canvas{display:block}.er-stage.is-building #hero-er{opacity:0;transition:none}.er-stage.is-failed #hero-er{opacity:0;pointer-events:none}.er-fallback{z-index:1;color:var(--ink-2);font-family:var(--font-heading);text-align:center;opacity:0;pointer-events:none;transition:opacity var(--duration-normal) var(--ease-default);place-items:center;padding:24px;font-size:.95rem;line-height:1.6;display:grid;position:absolute;inset:0}.er-fallback p{max-width:16em;margin:0}.er-fallback-failed,.er-fallback-noscript{display:none}.er-stage.is-loading .er-fallback,.er-stage.is-building .er-fallback,.er-stage.is-failed .er-fallback{opacity:1}.er-stage.is-failed .er-fallback{pointer-events:auto}.er-stage.is-failed .er-fallback-loading{display:none}.er-stage.is-failed .er-fallback-failed{display:block}section{padding-block:clamp(40px,5vw,72px) clamp(48px,6vw,88px);position:relative}.container{max-width:var(--max-width-layout);padding-inline:clamp(var(--space-6), 5vw, var(--space-16));margin:0 auto}.section-head{max-width:36em;margin-bottom:clamp(28px,3.5vw,48px)}.section-head h2{font-family:var(--font-display-cn);font-weight:var(--weight-regular);font-size:clamp(1.9rem,4vw,2.8rem);line-height:var(--leading-cn-tight);letter-spacing:-.01em;margin-top:var(--space-3);margin-bottom:var(--space-4)}.section-head h2 em{color:var(--color-accent-warm);font-style:italic}.section-head p{font-family:var(--font-body-cn);color:var(--ink-2);font-size:1.05rem;line-height:var(--leading-cn-loose);max-width:28em}.features{grid-template-columns:repeat(3,1fr);gap:clamp(28px,3.5vw,48px) clamp(28px,4vw,56px);display:grid}@media (width<=720px){.features{grid-template-columns:1fr}}.feat{padding-top:var(--space-5);border-top:1px solid var(--hair);grid-template-columns:auto 1fr;gap:20px;display:grid}.feat-num{font-family:var(--font-display);color:var(--color-accent-warm);padding-top:4px;font-size:1.2rem;font-style:italic;line-height:1}.feat h3{font-family:var(--font-heading-cn);font-weight:var(--weight-semibold);letter-spacing:-.005em;margin-bottom:8px;font-size:1.1rem}.feat p{font-family:var(--font-body-cn);color:var(--ink-2);font-size:.98rem;line-height:var(--leading-cn-loose)}.feat p code,.section-head p code{font-family:var(--font-mono);color:var(--color-accent-warm);background:color-mix(in srgb, var(--color-accent-orange) 9%, transparent);border:1px solid color-mix(in srgb, var(--color-accent-orange) 18%, transparent);white-space:nowrap;border-radius:999px;padding:.12em .42em;font-size:.88em}.demo-card{background:var(--bg-raised);border:1px solid var(--hair);border-radius:var(--radius-xl);overflow:hidden}.demo-bar{background:var(--bg-overlay);border-bottom:1px solid var(--hair);align-items:center;gap:6px;padding:12px 16px;display:flex}.tab-switch{border:1px solid var(--hair);background:color-mix(in srgb, var(--bg-raised) 76%, var(--bg-overlay));border-radius:999px;grid-template-columns:repeat(2,minmax(72px,1fr));padding:3px;display:grid;position:relative}.tab-indicator{background:color-mix(in srgb, var(--color-accent-orange) 10%, transparent);border:1px solid color-mix(in srgb, var(--color-accent-orange) 30%, transparent);width:calc(50% - 3px);transition:transform var(--duration-normal) var(--ease-default);pointer-events:none;border-radius:999px;position:absolute;inset:3px auto 3px 3px}.tab-switch[data-active=dbml] .tab-indicator{transform:translate(100%)}.tab{z-index:1;font-family:var(--font-heading);color:var(--ink-2);cursor:pointer;transition:all var(--duration-fast) var(--ease-default);background:0 0;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:7px 16px;font-size:.85rem;font-weight:500;display:inline-flex;position:relative}.tab:hover{color:var(--ink)}.tab.is-active{color:var(--color-accent-warm);background:0 0;border-color:#0000}.demo-actions{gap:8px;margin-left:auto;display:flex}.mini-btn{font-family:var(--font-heading);color:var(--ink-2);border:1px solid var(--rule);cursor:pointer;transition:all var(--duration-fast) var(--ease-default);background:0 0;border-radius:999px;align-items:center;gap:8px;padding:6px 12px;font-size:.8rem;font-weight:500;display:inline-flex}.mini-btn:hover{color:var(--color-accent-warm);border-color:var(--color-accent-orange)}.mini-btn.is-copied{color:var(--color-accent-warm);border-color:color-mix(in srgb, var(--color-accent-orange) 40%, transparent);background:color-mix(in srgb, var(--color-accent-orange) 8%, transparent)}.icon-btn{border-radius:50%;flex:0 0 44px;justify-content:center;width:44px;height:44px;padding:0}.mini-btn svg{width:13px;height:13px}.icon-btn svg{width:15px;height:15px}.code-panel{display:none}.code-panel.is-active{display:block}.code-panel pre{height:384px;overflow:auto;font-family:var(--font-mono)!important;background:0 0!important;margin:0!important;padding:clamp(20px,2.5vw,32px) clamp(20px,3vw,36px)!important;font-size:.9rem!important;line-height:1.7!important}.code-panel code{font-family:var(--font-mono)!important}.demo-foot{border-top:1px solid var(--hair);background:color-mix(in srgb, var(--color-accent-orange) 5%, transparent);font-family:var(--font-body-cn);color:var(--ink-2);align-items:center;gap:10px;padding:12px 20px;font-size:.9rem;display:flex}[data-theme=light] .code-panel pre code{color:#2b2a25}[data-theme=light] .token.comment{color:#9b9890;font-style:italic}[data-theme=light] .token.keyword,[data-theme=light] .token.atrule,[data-theme=light] .token.attr{color:#c96442;font-weight:500}[data-theme=light] .token.builtin{color:#7c5fb3;font-weight:500}[data-theme=light] .token.string{color:#6b8f47}[data-theme=light] .token.number{color:#5a89b8}[data-theme=light] .token.function,[data-theme=light] .token.class-name{color:#c9943a}[data-theme=light] .token.punctuation{color:#6b6860}[data-theme=light] .token.operator{color:#c96442}[data-theme=dark] .code-panel pre code{color:#d9d5c6}[data-theme=dark] .token.comment{color:#6b6860;font-style:italic}[data-theme=dark] .token.keyword,[data-theme=dark] .token.attr{color:#e8a884;font-weight:500}[data-theme=dark] .token.builtin{color:#c0a8f0;font-weight:500}[data-theme=dark] .token.string{color:#a9c48a}[data-theme=dark] .token.number{color:#8fb5d9}[data-theme=dark] .token.function{color:#e0c47a}[data-theme=dark] .token.operator{color:#e8a884}.steps{border-top:1px solid var(--hair);border-bottom:1px solid var(--hair);grid-template-columns:repeat(3,1fr);gap:0;display:grid}@media (width<=900px){.steps{grid-template-columns:1fr 1fr}}@media (width<=560px){.steps{grid-template-columns:1fr}}.step{border-right:1px solid var(--hair);transition:background var(--duration-normal) var(--ease-default);padding:clamp(24px,3vw,36px) clamp(16px,2vw,24px)}.step:last-child{border-right:none}.step:hover{background:color-mix(in srgb, var(--color-accent-orange) 4%, transparent)}.step-num{font-family:var(--font-display);color:var(--color-accent-warm);margin-bottom:var(--space-4);font-size:2rem;font-style:italic;font-weight:400;line-height:1}.step h4{font-family:var(--font-heading-cn);font-weight:var(--weight-semibold);margin-bottom:6px;font-size:1rem}.step p{font-family:var(--font-body-cn);color:var(--ink-2);font-size:.93rem;line-height:1.7}@media (width<=900px){.step{border-right:1px solid var(--hair);border-bottom:1px solid var(--hair)}.step:nth-child(2n){border-right:none}.step:last-child{border-bottom:none}}.callout{margin-top:var(--space-8);padding:var(--space-5) var(--space-6);background:color-mix(in srgb, var(--color-warning) 7%, transparent);border-left:3px solid var(--color-warning);border-radius:0 var(--radius-md) var(--radius-md) 0;font-family:var(--font-body-cn);color:var(--ink);font-size:.96rem;line-height:var(--leading-cn-loose)}.callout strong{font-family:var(--font-heading-cn);font-weight:var(--weight-semibold)}.callout code{font-family:var(--font-mono);background:var(--bg-raised);border:1px solid var(--hair);border-radius:4px;padding:1px 7px;font-size:.88em}.chen-grid{grid-template-columns:repeat(4,1fr);gap:clamp(14px,2vw,20px);display:grid}@media (width<=900px){.chen-grid{grid-template-columns:1fr 1fr}}.chen-card{background:var(--bg-raised);border:1px solid var(--hair);border-radius:var(--radius-lg);padding:var(--space-6) var(--space-5);text-align:center;transition:transform var(--duration-normal) var(--ease-default), border-color var(--duration-normal) var(--ease-default)}.chen-card:hover{border-color:var(--color-accent-orange);transform:translateY(-3px)}.chen-shape{height:60px;color:var(--color-accent-warm);margin-bottom:var(--space-4);transition:transform var(--duration-normal) var(--ease-bounce);place-items:center;display:grid}.chen-card:hover .chen-shape{transform:scale(1.08)}.chen-card h4{font-family:var(--font-heading-cn);font-weight:var(--weight-semibold);margin-bottom:4px;font-size:.98rem}.chen-card h4 em{font-family:var(--font-display);color:var(--color-accent-warm);margin-right:4px;font-style:italic;font-weight:400}.chen-card p{font-family:var(--font-body-cn);color:var(--ink-2);font-size:.86rem}.fig{background:var(--bg-raised);border:1px solid var(--hair);border-radius:var(--radius-lg);cursor:zoom-in;transition:transform var(--duration-normal) var(--ease-default), box-shadow var(--duration-normal) var(--ease-default);overflow:hidden}.fig:hover{box-shadow:var(--shadow-elevated);transform:translateY(-3px)}.fig img{background:#fff;width:100%;height:auto;display:block}.fig figcaption{border-top:1px solid var(--hair);font-family:var(--font-body-cn);color:var(--ink-2);justify-content:space-between;align-items:baseline;gap:12px;padding:14px 20px;font-size:.92rem;display:flex}.fig figcaption .tag{font-family:var(--font-display);color:var(--color-accent-warm);font-size:.95rem;font-style:italic}.lightbox{z-index:200;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:0;pointer-events:none;cursor:zoom-out;transition:opacity var(--duration-normal) var(--ease-default);background:#141413eb;place-items:center;padding:clamp(20px,4vw,60px);display:grid;position:fixed;inset:0}.lightbox.is-open{opacity:1;pointer-events:auto}.lightbox img{border-radius:var(--radius-md);max-width:100%;max-height:100%;box-shadow:0 20px 80px #00000080}.faq{max-width:760px;margin:0 auto}.faq details{border-top:1px solid var(--hair);padding:var(--space-5) 0}.faq details:last-of-type{border-bottom:1px solid var(--hair)}.faq summary{cursor:pointer;font-family:var(--font-display-cn);font-size:1.15rem;font-weight:var(--weight-regular);color:var(--ink);transition:color var(--duration-fast) var(--ease-default);justify-content:space-between;align-items:baseline;gap:16px;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:hover{color:var(--color-accent-warm)}.faq summary:after{content:"+";font-family:var(--font-display);color:var(--color-accent-warm);transition:transform var(--duration-normal) var(--ease-default);flex-shrink:0;font-size:1.5rem;font-style:italic;line-height:1}.faq details[open] summary:after{content:"–"}.faq summary:after{transition:transform var(--duration-normal) var(--ease-default);display:inline-block}.faq-wrap{height:0;transition:height .34s var(--ease-default);will-change:height;display:block;overflow:hidden}.faq-body{padding-top:var(--space-3);font-family:var(--font-body-cn);color:var(--ink-2);font-size:.98rem;line-height:var(--leading-cn-loose);opacity:0;max-width:36em;transition:opacity .24s var(--ease-default) 80ms}.faq details[open] .faq-body{opacity:1}.faq-body code{font-family:var(--font-mono);background:var(--bg-raised);border:1px solid var(--hair);border-radius:4px;padding:1px 6px;font-size:.88em}.cta{color:#faf9f5;--invert-bg:#141413;--invert-ink:#faf9f5;--invert-ink-2:#a9a69c;--invert-hair:#2b2a26;background:#141413;padding-block:clamp(56px,7vw,96px);position:relative;overflow:hidden}[data-theme=dark] .cta{color:#faf9f5;background:#0d0c0a}.cta:before{content:"";pointer-events:none;background:radial-gradient(65% 55% at 20% 30%,#d9775747 0%,#0000 60%);position:absolute;inset:0}[data-theme=dark] .cta:before{background:radial-gradient(65% 55% at 20% 30%,#d9775759 0%,#0000 60%)}.cta-inner{max-width:var(--max-width-layout);padding-inline:clamp(var(--space-6), 5vw, var(--space-16));grid-template-columns:1.2fr .8fr;align-items:end;gap:clamp(28px,4vw,56px);margin:0 auto;display:grid;position:relative}@media (width<=760px){.cta-inner{grid-template-columns:1fr;align-items:stretch}}.cta .eyebrow{color:var(--invert-ink-2)}.cta .eyebrow:before{background:var(--invert-hair)}.cta-title{font-family:var(--font-display-cn);font-weight:var(--weight-regular);font-size:clamp(1.9rem,4vw,3rem);line-height:var(--leading-cn-tight);letter-spacing:-.01em;margin-top:var(--space-4)}.cta-title em{background:linear-gradient(120deg,#e8a884,#d97757);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-style:italic}.cta-right{gap:var(--space-5);flex-direction:column;align-items:flex-start;display:flex}@media (width>=761px){.cta-right{align-items:flex-end}}.cta-note{font-family:var(--font-body-cn);color:var(--invert-ink-2);font-size:.96rem;line-height:var(--leading-cn-loose);max-width:24em}footer{padding:var(--space-10) clamp(var(--space-6), 5vw, var(--space-16));max-width:var(--max-width-layout);font-family:var(--font-heading);color:var(--ink-2);border-top:1px solid var(--hair);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:0 auto;font-size:.88rem;display:flex}footer a{color:var(--ink);transition:color var(--duration-fast) var(--ease-default)}footer a:hover{color:var(--color-accent-warm)}#langLabel{font-family:var(--font-heading);font-size:.76rem;font-weight:600}footer em{font-family:var(--font-display);color:var(--color-accent-warm);font-style:italic}.to-top{z-index:60;background:var(--color-accent-orange);color:#fff;cursor:pointer;opacity:0;pointer-events:none;width:42px;height:42px;transition:all var(--duration-normal) var(--ease-default);border:none;border-radius:50%;place-items:center;display:grid;position:fixed;bottom:22px;right:22px;transform:translateY(12px);box-shadow:0 8px 20px #d9775759}.to-top.is-show{opacity:1;pointer-events:auto;transform:translateY(0)}.to-top:hover{background:var(--color-accent-warm);transform:translateY(-2px)}.to-top svg{width:15px;height:15px}.toast{z-index:70;background:var(--invert-bg);color:var(--invert-ink);font-family:var(--font-heading);box-shadow:var(--shadow-elevated);opacity:0;pointer-events:none;transition:all var(--duration-normal) var(--ease-default);border-radius:999px;align-items:center;gap:8px;padding:9px 18px;font-size:.86rem;font-weight:500;display:inline-flex;position:fixed;bottom:28px;left:50%;transform:translate(-50%)translateY(16px)}.toast.is-show{opacity:1;transform:translate(-50%)translateY(0)}.toast svg{width:14px;height:14px;color:var(--color-accent-orange)}.scroll-reveal{opacity:0;transition:opacity .52s var(--ease-default), transform .52s var(--ease-default);transform:translateY(20px)}.scroll-reveal.is-visible{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.scroll-reveal{opacity:1;transform:none}}:root{--app-font:var(--font-heading-cn);--app-font-display:var(--font-display-cn);--app-font-body:var(--font-body-cn);--app-font-mono:var(--font-mono);--app-ink:var(--color-text-primary);--app-ink-2:var(--color-text-secondary);--app-ink-3:var(--color-text-muted);--app-bg:var(--color-bg-base);--app-bg-raised:var(--color-bg-raised);--app-bg-overlay:var(--color-bg-overlay);--app-border:var(--color-border-subtle);--app-border-strong:var(--color-border-default);--app-accent:var(--color-accent-orange);--app-accent-warm:var(--color-accent-warm);--z-toolbar:100;--z-corner:1200;--z-overlay:1300;--toolbar-top:16px;--toolbar-step:48px}:focus:not(:focus-visible){outline:none}body{background-color:var(--app-bg);color:var(--app-ink);font-family:var(--app-font);font-size:var(--text-base);line-height:var(--leading-cn-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;margin:0;padding:0;position:relative}body:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(60% 50% at 12% 0,#d9775717 0%,#0000 60%),radial-gradient(45% 45% at 100% 100%,#6a9bcc0f 0%,#0000 55%);position:fixed;inset:0}::selection{background:var(--app-accent);color:#fff}.back-home{z-index:var(--z-corner);border:1px solid var(--app-border);border-radius:var(--radius-full);background:var(--app-bg-overlay);color:var(--app-ink-2);font-family:var(--app-font);font-size:.78rem;font-weight:var(--weight-medium);padding:8px 12px;text-decoration:none;position:absolute;top:18px;left:18px}.back-home:hover{color:var(--app-ink);border-color:var(--app-border-strong)}.app-container{max-width:1600px;margin:0 auto;padding:clamp(32px,4vw,64px) clamp(24px,4vw,40px) clamp(32px,4vw,48px);position:relative}.header{text-align:center;max-width:720px;animation:fadeInDown .9s var(--ease-default);margin:0 auto clamp(20px,2.6vw,36px);padding-top:8px}body.legend-top-visible .header{margin-bottom:clamp(14px,1.8vw,22px)}.header-kicker{color:var(--app-ink-3);font-family:var(--app-font);font-size:.72rem;font-weight:var(--weight-medium);letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:8px;margin:0 0 12px;display:inline-flex}.header-kicker:before,.header-kicker:after{content:"";background:var(--app-accent);border-radius:50%;width:7px;height:7px}.header-kicker:after{background:var(--app-accent-warm);opacity:.72;width:5px;height:5px}.header h1{font-family:var(--app-font-display);font-weight:var(--weight-regular);font-size:clamp(2.4rem,6vw,4rem);line-height:var(--leading-cn-tight);letter-spacing:-.04em;color:var(--app-ink);margin:0 0 10px}.header h1 em{color:var(--app-accent-warm);font-style:normal;font-weight:var(--weight-regular)}.header-slogan,.header p{font-family:var(--app-font-body);color:var(--app-ink-2);font-size:clamp(1rem,1.3vw,1.15rem);line-height:var(--leading-cn-snug);max-width:28em;margin:0 auto}.header-hint{font-weight:var(--weight-medium);letter-spacing:.1em;text-transform:uppercase;flex-direction:column;align-items:center;gap:8px;display:flex;font-family:var(--app-font)!important;font-size:var(--text-xs)!important;color:var(--app-ink-3)!important;margin:var(--space-5) auto 0!important;line-height:1!important}.header-hint-row{white-space:nowrap;align-items:center;gap:10px;display:inline-flex}.header-hint-row:first-child:before,.header-hint-row:first-child:after{content:"";background:var(--app-border-strong);width:22px;height:1px}.header-hint-row--secondary{color:var(--app-ink-3);opacity:.85}.main-content{animation:fadeInUp .9s var(--ease-default) .15s backwards;grid-template-columns:440px 1fr;align-items:stretch;gap:clamp(20px,2.4vw,32px);display:grid}.diagram-legend{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;display:flex}.diagram-legend--top{animation:fadeInUp .9s var(--ease-default) .1s backwards;margin:0 auto clamp(20px,2.4vw,32px);display:none}.diagram-legend--top.is-visible{display:flex}.diagram-legend--preview{flex-wrap:nowrap;flex:none;justify-content:flex-start}.diagram-legend--measure{visibility:hidden;pointer-events:none;flex-wrap:nowrap;width:max-content;margin:0;position:absolute;top:0;left:-10000px}.preview-card-header{flex-wrap:wrap;gap:16px;height:auto}.preview-header-actions{flex:none;align-items:center;gap:16px;margin-left:auto;display:flex}.card{background:var(--app-bg-raised);border:1px solid var(--app-border);border-radius:var(--radius-xl);height:100%;transition:border-color var(--duration-normal) var(--ease-default), box-shadow var(--duration-normal) var(--ease-default);flex-direction:column;display:flex;overflow:hidden;box-shadow:0 2px 12px #1414130d}.card:hover{border-color:var(--app-border-strong);box-shadow:0 8px 28px #14141312}.card-header{border-bottom:1px solid var(--app-border);background:var(--app-bg-overlay);justify-content:space-between;align-items:center;min-height:66px;padding:18px 24px;display:flex}.card-title{font-family:var(--app-font-display);font-weight:var(--weight-medium);color:var(--app-ink);letter-spacing:-.01em;align-items:center;gap:10px;margin:0;font-size:1.18rem;display:flex}.card-title span{font-size:1.2rem}.card-content{flex-direction:column;flex:1;gap:20px;padding:24px;display:flex}.sql-editor-frame{flex-direction:column;height:500px;min-height:0;display:flex}.inline-label{font-family:var(--app-font);font-size:var(--text-sm);color:var(--app-ink-2);letter-spacing:.01em}.btn{border-radius:var(--radius-full);height:46px;font-family:var(--app-font);font-size:.92rem;font-weight:var(--weight-medium);letter-spacing:.01em;cursor:pointer;white-space:nowrap;width:100%;transition:transform var(--duration-fast) var(--ease-default), background var(--duration-normal) var(--ease-default), color var(--duration-normal) var(--ease-default), border-color var(--duration-normal) var(--ease-default), box-shadow var(--duration-normal) var(--ease-default);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 18px;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none!important;transform:none!important}.btn-primary{background:var(--app-accent);color:#fff;box-shadow:0 6px 18px #d977574d}.btn-primary:hover{background:var(--app-accent-warm);transform:translateY(-2px);box-shadow:0 10px 26px #c9644261}.btn-primary:active{transform:translateY(0)}.btn-sm{width:auto;height:36px;padding:0 16px;font-size:.82rem}.btn-accent{color:var(--app-accent-warm);background:#d9775714;border:1px solid #d9775738}.btn-accent:hover{background:#d9775724;border-color:#d9775761;transform:translateY(-1px)}.btn-accent:active{background:#d977572e;transform:translateY(0)}.button-group{flex-wrap:wrap;align-items:center;gap:10px;margin-top:auto;display:flex}.button-group .btn-primary{flex:1 1 0;width:auto;min-width:0;overflow:hidden}.btn-primary-label-stack{pointer-events:none;white-space:nowrap;justify-content:center;align-items:center;line-height:1;display:inline-flex;position:relative}.btn-primary-label-stack .label-long,.btn-primary-label-stack .label-short{will-change:opacity, transform;transition:opacity .24s,transform .34s cubic-bezier(.32,.72,0,1)}.btn-primary-label-stack .label-short{justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.btn-primary-label-stack .label-long{opacity:1;transform:translateY(0)}.btn-primary-label-stack .label-short,.btn-primary-label-stack[data-compact=true] .label-long{opacity:0;transform:translateY(6px)}.btn-primary-label-stack[data-compact=true] .label-short{opacity:1;transform:translateY(0)}.diagram-container canvas{display:block}.diagram-container{width:100%;min-height:560px;transition:background-image var(--duration-normal) var(--ease-default);background-color:#fff;background-image:radial-gradient(#14141324 1.5px,#0000 1.5px);background-size:24px 24px;border:none;border-radius:0;flex:1;position:relative;overflow:hidden;box-shadow:inset 0 1px #14141305}.diagram-container.no-grid{background-color:#fff;background-image:none}.background-toggle,.colorize-toggle,.attrs-toggle,.history-toggle,.force-toggle,.avoid-toggle{left:16px;top:calc(var(--toolbar-top) + var(--toolbar-n,0) * var(--toolbar-step));border:1px solid var(--app-border);background:color-mix(in srgb, var(--app-bg-overlay) 92%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;width:40px;height:40px;z-index:var(--z-toolbar);appearance:none;font:inherit;color:inherit;transition:transform var(--duration-fast) var(--ease-default), background var(--duration-normal) var(--ease-default), border-color var(--duration-normal) var(--ease-default), box-shadow var(--duration-normal) var(--ease-default);border-radius:50%;place-items:center;margin:0;padding:0;display:grid;position:absolute;box-shadow:0 2px 8px #1414130f}.background-toggle{--toolbar-n:0}.colorize-toggle{--toolbar-n:1}.attrs-toggle{--toolbar-n:2}.history-toggle{--toolbar-n:3}.force-toggle{--toolbar-n:4}.avoid-toggle{--toolbar-n:5}.font-size-slider{--toolbar-n:6;left:16px;top:calc(var(--toolbar-top) + var(--toolbar-n,0) * var(--toolbar-step) + 8px);box-sizing:border-box;background:color-mix(in srgb, var(--app-bg-overlay) 92%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;width:40px;height:172px;z-index:var(--z-toolbar);transition:transform var(--duration-fast) var(--ease-default), border-color var(--duration-normal) var(--ease-default), box-shadow var(--duration-normal) var(--ease-default);border:1px solid #d9775747;border-radius:999px;flex-direction:column;justify-content:space-between;align-items:center;padding:12px 0 10px;display:flex;position:absolute;box-shadow:0 6px 18px #14141317}.font-size-slider:hover{border-color:var(--app-accent);transform:scale(1.03);box-shadow:0 8px 20px #1414131f}.font-size-slider:active{cursor:grabbing}.font-size-slider-mark{font-family:var(--app-font-display);font-weight:var(--weight-medium);color:var(--app-ink-2);pointer-events:none;line-height:1}.font-size-slider-mark-large{font-size:17px}.font-size-slider-mark-small{opacity:.72;font-size:11px}.font-size-slider-track{pointer-events:none;background:#1414131f;border-radius:999px;width:6px;position:absolute;top:33px;bottom:28px;left:50%;overflow:visible;transform:translate(-50%)}.font-size-slider-fill{height:var(--font-slider-pct);background:linear-gradient(180deg, var(--app-accent-warm), var(--app-accent));border-radius:999px;position:absolute;bottom:0;left:0;right:0}.font-size-slider-thumb{left:50%;bottom:var(--font-slider-pct);background:var(--app-accent-warm);border:2px solid #fff;border-radius:50%;width:18px;height:18px;position:absolute;transform:translate(-50%,50%);box-shadow:0 2px 8px #14141338}.background-toggle:hover,.colorize-toggle:hover,.attrs-toggle:hover,.history-toggle:hover,.force-toggle:hover,.avoid-toggle:hover{border-color:var(--app-accent);transform:scale(1.06);box-shadow:0 6px 16px #1414131a}.background-toggle:active,.colorize-toggle:active,.attrs-toggle:active,.history-toggle:active,.force-toggle:active,.avoid-toggle:active{transform:scale(.95)}.background-toggle>svg,.colorize-toggle>svg,.attrs-toggle>svg,.history-toggle>svg,.force-toggle>svg,.avoid-toggle>svg{color:var(--app-ink-2);transition:color var(--duration-fast) var(--ease-default);font-size:16px;display:block}.background-toggle:hover>svg,.colorize-toggle:hover>svg,.attrs-toggle:hover>svg,.history-toggle:hover>svg,.force-toggle:hover>svg,.avoid-toggle:hover>svg{color:var(--app-accent-warm)}.force-toggle.active{background:linear-gradient(135deg,#fef3c7 0%,#fde68a 50%,#fed7aa 100%);border-color:#d9775766;box-shadow:0 4px 14px #d9775738}.force-toggle.active>svg{color:#c96442}.force-toggle.active:hover{background:linear-gradient(135deg,#fde68a 0%,#fcd34d 50%,#fdba74 100%);border-color:#d977578c}.force-toggle.active:hover>svg{color:#b04a2c}.avoid-toggle.active{background:linear-gradient(135deg,#d1fae5 0%,#cffafe 55%,#dbeafe 100%);border-color:#0ea5e957;box-shadow:0 4px 14px #14b8a62e}.avoid-toggle.active>svg{color:#0f8f8c}.avoid-toggle.active:hover{background:linear-gradient(135deg,#a7f3d0 0%,#a5f3fc 55%,#bfdbfe 100%);border-color:#14b8a680}.avoid-toggle.active:hover>svg{color:#0f766e}.colorize-toggle.active{background:linear-gradient(135deg,#dbeafe 0%,#f3e8ff 50%,#ffe4e6 100%);border-color:#0ea5e94d;box-shadow:0 4px 14px #8b5cf62e}.colorize-toggle.active>svg{color:#0ea5e9}.colorize-toggle.active:hover{background:linear-gradient(135deg,#bfdbfe 0%,#e9d5ff 50%,#fecdd3 100%);border-color:#0ea5e973}.colorize-toggle.active:hover>svg{color:#0284c7}.attrs-toggle,.colorize-toggle,.force-toggle,.avoid-toggle{overflow:hidden}.attrs-toggle:after,.colorize-toggle:after,.force-toggle:after,.avoid-toggle:after{content:"";background:var(--app-ink-2);transform-origin:50%;width:28px;height:2px;transition:transform var(--duration-normal) var(--ease-default), background var(--duration-fast) var(--ease-default);pointer-events:none;border-radius:2px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-45deg)scaleX(0)}.attrs-toggle.active:after,.colorize-toggle:not(.active):after,.force-toggle:not(.active):after,.avoid-toggle:not(.active):after{transform:translate(-50%,-50%)rotate(-45deg)scaleX(1)}.attrs-toggle:hover:after,.colorize-toggle:hover:after,.force-toggle:hover:after,.avoid-toggle:hover:after{background:var(--app-accent-warm)}.loading-overlay{background:color-mix(in srgb, var(--app-bg-overlay) 78%, transparent);z-index:10;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);place-items:center;display:grid;position:absolute;inset:0}.spinner{border:3px solid #d977572e;border-top-color:var(--app-accent);width:44px;height:44px;animation:spin 1s var(--ease-gentle) infinite;border-radius:50%}.error-message{color:var(--color-error);border-radius:var(--radius-md);background:#c0453a14;border:1px solid #c0453a38;align-items:center;gap:10px;padding:14px 18px;font-size:.95rem;display:flex}.diagram-error-overlay{z-index:8;opacity:0;pointer-events:none;transition:opacity .18s var(--ease-default), transform .22s var(--ease-default);place-items:center;padding:24px;display:grid;position:absolute;inset:0;transform:translateY(-8px)}.diagram-error-overlay.is-visible{opacity:1;transform:translateY(0)}.diagram-error-overlay .error-message{pointer-events:auto;background:color-mix(in srgb, var(--color-error) 90%, transparent);color:#fff;border-radius:var(--radius-md);border:none;max-width:min(520px,90%);padding:12px 18px;box-shadow:0 6px 24px #0000001f}.parser-warning-toast{z-index:120;box-sizing:border-box;border-radius:var(--radius-md);color:#332609;width:min(420px,100% - 32px);font-family:var(--app-font);opacity:0;pointer-events:none;transition:opacity .18s var(--ease-default), transform .22s var(--ease-default);background:#facc15;border:0;padding:14px 44px 14px 16px;position:absolute;top:16px;right:16px;transform:translateY(-8px);box-shadow:0 14px 34px #7858002e}.parser-warning-toast.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}@starting-style{.diagram-error-overlay.is-visible,.parser-warning-toast.is-visible{opacity:0;transform:translateY(-8px)}}.parser-warning-title{font-size:13px;font-weight:var(--weight-semibold);letter-spacing:.04em;text-transform:uppercase;margin:0 0 8px}.parser-warning-list{gap:5px;margin:0;padding-left:18px;font-size:12px;line-height:1.45;display:grid}.parser-warning-more{font-size:12px;font-weight:var(--weight-medium);margin-top:8px}.parser-warning-close{color:#332609;cursor:pointer;width:28px;height:28px;transition:background var(--duration-fast) var(--ease-default), transform var(--duration-fast) var(--ease-default);background:#33260914;border:0;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:8px;right:8px}.parser-warning-close:hover{background:#33260929;transform:scale(1.04)}.parser-warning-close:active{transform:scale(.96)}.parser-warning-close svg{width:15px;height:15px}.legend-item{background:var(--app-bg-overlay);border:1px solid var(--app-border);font-family:var(--app-font);color:var(--app-ink-2);transition:color var(--duration-fast) var(--ease-default), border-color var(--duration-fast) var(--ease-default);border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:.78rem;display:flex}.legend-item:hover{color:var(--app-ink);border-color:var(--app-border-strong)}.cm-host{border-radius:var(--radius-md);height:500px;box-shadow:0 0 0 1px var(--app-border);transition:box-shadow var(--duration-normal) var(--ease-default);background:var(--app-bg-overlay);overflow:hidden}.sql-editor-frame .cm-host{height:100%}.cm-host:focus-within{box-shadow:0 0 0 1.5px var(--app-accent), 0 0 0 4.5px #d9775738}.cm-host .cm-editor{height:100%;font-family:var(--app-font-mono);color:var(--app-ink);background:0 0;font-size:13.5px}.cm-host .cm-editor.cm-focused{outline:none}.cm-host .cm-scroller{font-family:inherit;line-height:1.65}.cm-host .cm-gutters{background:var(--app-bg-raised);border-right:1px solid var(--app-border);color:var(--app-ink-3)}.cm-host .cm-lineNumbers .cm-gutterElement{color:var(--app-ink-3)}.cm-host .cm-cursor,.cm-host .cm-dropCursor{border-left:1.5px solid var(--app-accent-warm)}.cm-host,.cm-host .cm-editor,.cm-host .cm-scroller,.cm-host .cm-content,.cm-host .cm-line{cursor:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='13' height='20' viewBox='0 0 13 20'><g fill='none' stroke-linecap='round'><g stroke='white' stroke-width='2.6'><line x1='6.5' y1='2.5' x2='6.5' y2='17.5'/><line x1='3.5' y1='2.75' x2='9.5' y2='2.75'/><line x1='3.5' y1='17.25' x2='9.5' y2='17.25'/></g><g stroke='black' stroke-width='1.2'><line x1='6.5' y1='2.5' x2='6.5' y2='17.5'/><line x1='3.5' y1='2.75' x2='9.5' y2='2.75'/><line x1='3.5' y1='17.25' x2='9.5' y2='17.25'/></g></g></svg>") 6 10,text}.cm-host .cm-selectionBackground,.cm-host .cm-editor .cm-selectionLayer .cm-selectionBackground,.cm-host .cm-editor.cm-focused>.cm-scroller>.cm-selectionLayer .cm-selectionBackground{background:0 0!important}.cm-host .cm-content ::selection{color:currentColor!important;background-color:#d9775747!important}.cm-host .cm-content::selection{color:currentColor!important;background-color:#d9775747!important}.cm-host .cm-line ::selection{color:currentColor!important;background-color:#d9775747!important}.cm-host .cm-line::selection{color:currentColor!important;background-color:#d9775747!important}.cm-host .cm-content ::-moz-selection{color:currentColor!important;background-color:#d9775747!important}.cm-host .cm-content::-moz-selection{color:currentColor!important;background-color:#d9775747!important}.cm-host .cm-line ::-moz-selection{color:currentColor!important;background-color:#d9775747!important}.cm-host .cm-line::-moz-selection{color:currentColor!important;background-color:#d9775747!important}.cm-host .cm-activeLine{background:#d977570d}.cm-host .cm-activeLineGutter{color:var(--app-ink-2);background:#d9775714}.switch-control{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;display:inline-flex}.switch-control.is-disabled{cursor:not-allowed;opacity:.55}.switch-control-input{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.switch-control-track{width:30px;height:18px;transition:background var(--duration-normal) var(--ease-default);background:#0f172a2e;border-radius:999px;flex:none;display:inline-block;position:relative}.switch-control-thumb{width:14px;height:14px;transition:transform var(--duration-normal) var(--ease-default);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #0f172a2e}.switch-control-input:checked+.switch-control-track{background:var(--app-accent)}.switch-control-input:checked+.switch-control-track .switch-control-thumb{transform:translate(12px)}.switch-control:hover .switch-control-input:checked+.switch-control-track{background:var(--app-accent-warm)}.switch-control-input:focus-visible+.switch-control-track{box-shadow:0 0 0 2px var(--app-bg-overlay), 0 0 0 4px #d9775773}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--app-border-strong);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-border-strong)}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=1200px){.main-content{grid-template-columns:1fr}}@media (width<=768px){.btn-primary:hover,.btn-accent:hover{transform:none}.btn-primary:hover{background:var(--app-accent);box-shadow:0 6px 18px #d977574d}.btn-accent:hover{background:#d9775714;border-color:#d9775738}.background-toggle:hover,.colorize-toggle:hover,.attrs-toggle:hover,.history-toggle:hover,.force-toggle:hover,.avoid-toggle:hover,.font-size-slider:hover{border-color:var(--app-border);transform:none;box-shadow:0 2px 8px #1414130f}.btn-primary:active,.btn-accent:active{transform:scale(1.04)}.background-toggle:active,.colorize-toggle:active,.attrs-toggle:active,.history-toggle:active,.force-toggle:active,.avoid-toggle:active{transform:scale(1.1)}.avoid-toggle{inset:auto 16px 64px auto}.font-size-slider{flex-direction:row-reverse;width:172px;height:40px;padding:0 12px;inset:auto 16px 16px auto}.font-size-slider-track{width:auto;height:6px;inset:50% 32px auto;transform:translateY(-50%)}.font-size-slider-fill{width:var(--font-slider-pct);background:linear-gradient(90deg, var(--app-accent), var(--app-accent-warm));height:auto;top:0;bottom:0;right:auto}.font-size-slider-thumb{left:var(--font-slider-pct);top:50%;bottom:auto;transform:translate(-50%,-50%)}.app-container{padding:20px 16px 24px}.header{margin-bottom:24px;padding-top:8px}.header h1{font-size:clamp(1.8rem,6vw,2.4rem)}.header p{font-size:.96rem}.header-hint-row{white-space:normal}.main-content{gap:20px}.card-header{min-height:56px;padding:14px 18px}.card-content{gap:16px;padding:18px}.card-title{font-size:1.02rem}.sql-editor-frame,.cm-host{height:320px}.cm-host .cm-editor{font-size:13px}.button-group{gap:10px}.btn{height:44px;font-size:.9rem}.btn-sm{height:36px;font-size:.78rem}.diagram-container{min-height:420px}.history-overlay .history-card{width:260px;height:360px}}@media (width<=480px){.app-container{padding:16px 12px 24px}.header{margin-bottom:22px;padding-top:4px}.header h1{letter-spacing:-.03em;font-size:clamp(2rem,12vw,2.6rem)}.header p{font-size:.88rem}.main-content{gap:16px}.card{border-radius:var(--radius-lg)}.card-header{padding:12px 14px}.card-content{gap:12px;padding:14px}.card-title{font-size:.96rem}.sql-editor-frame,.cm-host{height:260px}.cm-host .cm-editor{font-size:12px}.diagram-container{background-size:18px 18px;min-height:320px}.legend-item{padding:3px 9px;font-size:.72rem}.btn{height:42px;padding:0 14px;font-size:.85rem}.btn-sm{height:32px;padding:0 12px;font-size:.72rem}.output-section .card-header>div:first-child>div:last-child{display:none!important}.output-section .card-header{flex-wrap:wrap;justify-content:center!important}.output-section .card-header>div:last-child{flex-wrap:wrap;justify-content:center;gap:8px!important;margin:0!important}.card-header>div:last-child .switch-control{transform:scale(.92)}}.lang-switch{z-index:var(--z-corner);background:color-mix(in srgb, var(--app-bg-overlay) 92%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--app-border);transition:opacity var(--duration-slow) var(--ease-default), border-color var(--duration-normal) var(--ease-default), box-shadow var(--duration-normal) var(--ease-default);border-radius:999px;align-items:center;gap:0;padding:4px;display:inline-flex;position:absolute;top:20px;right:20px;box-shadow:0 2px 10px #1414130f}body.history-open .lang-switch{opacity:0;pointer-events:none}.lang-switch:hover{border-color:var(--app-border-strong);box-shadow:0 6px 16px #14141314}.lang-switch .lang-option{z-index:1;cursor:pointer;width:32px;height:32px;font-family:var(--app-font);font-size:.78rem;font-weight:var(--weight-medium);letter-spacing:.02em;color:var(--app-ink-3);transition:color .26s var(--ease-default);background:0 0;border:0;border-radius:50%;place-items:center;margin:0;padding:0;display:grid;position:relative}.lang-switch .lang-option:hover{color:var(--app-ink-2)}.lang-switch .lang-option.is-active{color:var(--app-ink)}.lang-switch .lang-thumb{background:var(--app-bg-raised);width:32px;height:32px;box-shadow:0 1.5px 4px #1414131a, 0 0 0 1px var(--app-border);pointer-events:none;border-radius:50%;transition:transform .38s cubic-bezier(.32,.72,.28,1);position:absolute;top:4px;left:4px}.lang-switch[data-lang=en] .lang-thumb{transform:translate(32px)}.lang-switch:focus-within{border-color:var(--app-accent);box-shadow:0 0 0 3px #d977572e}.lang-fade-target{transition:opacity .22s var(--ease-default)}body.is-lang-fading .lang-fade-target{opacity:.28}@media (width<=500px){.lang-switch{top:14px;right:14px}.lang-switch .lang-option,.lang-switch .lang-thumb{width:28px;height:28px;font-size:.72rem}.lang-switch[data-lang=en] .lang-thumb{transform:translate(28px)}}:root[data-theme=dark] body:before{background:radial-gradient(60% 50% at 12% 0,#d977571f 0%,#0000 60%),radial-gradient(45% 45% at 100% 100%,#6a9bcc14 0%,#0000 55%)}:root[data-theme=dark] .cm-host{color:var(--app-ink);background:#373630}:root[data-theme=dark] .diagram-container{background-color:#171716;background-image:radial-gradient(#eae7dc29 1.5px,#0000 1.5px)}:root[data-theme=dark] .diagram-container.no-grid{background-color:#171716;background-image:none}:root[data-theme=dark] ::-webkit-scrollbar-thumb{background:var(--color-border-default)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) body:before{background:radial-gradient(60% 50% at 12% 0,#d977571f 0%,#0000 60%),radial-gradient(45% 45% at 100% 100%,#6a9bcc14 0%,#0000 55%)}:root:not([data-theme=light]) .cm-host{color:var(--app-ink);background:#373630}:root:not([data-theme=light]) .diagram-container{background-color:#171716;background-image:radial-gradient(#eae7dc29 1.5px,#0000 1.5px)}:root:not([data-theme=light]) .diagram-container.no-grid{background-color:#171716;background-image:none}:root:not([data-theme=light]) ::-webkit-scrollbar-thumb{background:var(--color-border-default)}}.export-btn-wrap{flex:none;justify-content:flex-end;align-items:center;display:flex}.export-btn{color:#fff;cursor:pointer;white-space:nowrap;height:52px;font-family:var(--app-font);background:linear-gradient(#262626,#171717);border:0;border-radius:9999px;justify-content:center;align-items:center;padding:0;transition:width .56s cubic-bezier(.32,.72,0,1),transform .56s cubic-bezier(.32,.72,0,1),box-shadow .56s cubic-bezier(.32,.72,0,1);display:flex;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff1a,0 16px 32px -10px #0000004d}.export-btn[data-state=idle]{width:140px}.export-btn[data-state=open]{cursor:default;width:296px}.export-btn[data-state=loading]{cursor:default;width:200px}.export-btn[data-state=success]{cursor:default;width:180px}.export-btn[data-state=idle]:hover{transform:scale(1.02);box-shadow:inset 0 1px #ffffff1a,0 20px 40px -10px #0006}.export-btn[data-state=idle]:active{transform:scale(.97)}.export-btn:focus-visible{box-shadow:inset 0 1px 0 #ffffff1a, 0 16px 32px -10px #0000004d, 0 0 0 2px var(--app-bg), 0 0 0 4px var(--app-accent);outline:none}.export-btn:disabled{opacity:.45;cursor:not-allowed;transform:none!important}.export-progress{pointer-events:none;background:#ffffff1a;width:0;transition:width .3s cubic-bezier(0,0,.2,1);position:absolute;top:0;bottom:0;left:0}.export-view{opacity:0;pointer-events:none;white-space:nowrap;justify-content:center;align-items:center;gap:8px;width:100%;transition:opacity .24s,transform .34s cubic-bezier(.32,.72,0,1);display:flex;position:absolute;inset:0;transform:translateY(6px)}.export-view.is-on{opacity:1;pointer-events:auto;transform:translateY(0)}.export-view-idle .idle-label{letter-spacing:.14em;font-size:15px;font-weight:600}.export-view-idle .arrow-icon{color:#d4d4d4;transition:transform .34s cubic-bezier(.32,.72,0,1)}.export-btn[data-state=idle]:hover .export-view-idle .arrow-icon{transform:translateY(2px)}.export-view-open{justify-content:space-between;gap:0;padding:0 6px}.export-opt{cursor:pointer;border-radius:9999px;flex:1;justify-content:center;align-items:center;height:40px;transition:background .2s;display:flex}.export-opt:hover{background:#40404080}.export-opt-label{letter-spacing:.06em;color:#d4d4d4;pointer-events:none;font-size:13px;font-weight:700;transition:color .2s}.export-opt[data-fmt=PNG]:hover .export-opt-label{color:#60a5fa}.export-opt[data-fmt=SVG]:hover .export-opt-label{color:#34d399}.export-opt[data-fmt=XML]:hover .export-opt-label{color:#f59e0b}.export-opt[data-fmt=JSON]:hover .export-opt-label{color:#f472b6}.export-sep{background:#404040;flex:0 0 1px;width:1px;height:18px;margin:0 2px;transition:opacity .2s}.export-view-open:hover .export-sep{opacity:.4}.export-cancel{color:#a3a3a3;cursor:pointer;border-radius:9999px;flex:0 0 40px;justify-content:center;align-items:center;width:40px;height:40px;transition:background .2s,color .2s;display:flex}.export-cancel:hover{color:#fff;background:#40404080}.export-cancel svg{pointer-events:none}.export-view-loading .export-spinner{color:#a3a3a3;width:16px;height:16px;animation:.8s linear infinite export-spin}@keyframes export-spin{to{transform:rotate(360deg)}}.export-view-loading .loading-label{color:#e5e5e5;letter-spacing:.02em;font-size:14px;font-weight:500}.export-view-success .check-icon{color:#34d399;width:16px;height:16px}.export-view-success .check-icon path{stroke-dasharray:18;stroke-dashoffset:18px}.export-view-success.is-on .check-icon path{animation:.46s cubic-bezier(.32,.72,0,1) .18s forwards export-draw}@keyframes export-draw{to{stroke-dashoffset:0}}.export-view-success .success-label{color:#34d399;letter-spacing:.02em;font-size:14px;font-weight:500}.btn:focus-visible,.background-toggle:focus-visible,.colorize-toggle:focus-visible,.attrs-toggle:focus-visible,.history-toggle:focus-visible,.force-toggle:focus-visible,.avoid-toggle:focus-visible,.font-size-slider:focus-visible,.parser-warning-close:focus-visible{outline:2px solid var(--app-accent);outline-offset:3px}.history-overlay{z-index:var(--z-overlay);background:color-mix(in srgb, var(--app-bg) 96%, transparent);-webkit-backdrop-filter:blur(20px)saturate(135%);color:var(--app-ink);-webkit-user-select:none;user-select:none;touch-action:none;opacity:0;pointer-events:none;transition:opacity var(--duration-slow) var(--ease-default);position:fixed;inset:0;overflow:hidden}.history-overlay.is-open{opacity:1;pointer-events:auto}.history-overlay:not(.is-open) *{pointer-events:none!important}.history-overlay:before{content:"";filter:blur(40px);pointer-events:none;background:radial-gradient(#d9775742 0%,#0000 65%);width:55%;height:70%;position:absolute;inset:auto auto -18% -10%}.history-overlay:after{content:"";filter:blur(40px);pointer-events:none;background:radial-gradient(#c4b99a57 0%,#0000 70%);width:48%;height:58%;position:absolute;inset:-10% -12% auto auto}.history-header{z-index:5;pointer-events:none;font-family:var(--app-font-display);font-weight:var(--weight-regular);font-size:clamp(1.5rem,2vw,1.85rem);line-height:var(--leading-cn-tight);letter-spacing:-.015em;color:var(--app-ink);align-items:baseline;gap:14px;display:flex;position:absolute;top:clamp(24px,3vw,36px);left:clamp(24px,3vw,40px)}.history-header>svg{width:.78em;height:.78em;color:var(--app-accent-warm);position:relative;top:2px}.history-header .history-count{font-family:var(--app-font);font-weight:var(--weight-light);letter-spacing:.04em;color:var(--app-ink-2);font-size:.72em}.history-close{z-index:5;border:1px solid var(--app-border-strong);background:var(--app-bg-overlay);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);width:40px;height:40px;color:var(--app-ink);cursor:pointer;transition:transform var(--duration-fast) var(--ease-default), background var(--duration-normal) var(--ease-default), border-color var(--duration-normal) var(--ease-default), color var(--duration-normal) var(--ease-default);border-radius:50%;place-items:center;display:grid;position:absolute;top:clamp(20px,2.4vw,28px);right:clamp(20px,2.4vw,32px);box-shadow:0 4px 12px #14141314}.history-close:hover{background:var(--app-bg-overlay);border-color:var(--app-accent);color:var(--app-accent-warm);transform:scale(1.06)}.history-close:active{transform:scale(.95)}.history-close:focus-visible{outline:2px solid var(--app-accent);outline-offset:3px}.history-hint{z-index:5;border-radius:var(--radius-full);border:1px solid var(--app-border-strong);background:var(--app-bg-overlay);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--app-ink-2);font-family:var(--app-font);font-size:var(--text-cn-sm);letter-spacing:.01em;pointer-events:none;transition:opacity .6s var(--ease-default);align-items:center;gap:10px;padding:10px 22px;display:flex;position:absolute;bottom:clamp(28px,4vw,44px);left:50%;transform:translate(-50%);box-shadow:0 10px 28px #1414131a}.history-hint>svg{color:var(--app-accent);animation:1.4s ease-in-out infinite history-bounce}@keyframes history-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.history-empty{pointer-events:none;text-align:center;place-items:center;display:grid;position:absolute;inset:0}.history-empty-card{align-items:center;gap:var(--space-3);padding:var(--space-8) var(--space-10);flex-direction:column;max-width:360px;display:flex}.history-empty-icon-wrap{background:color-mix(in srgb, var(--app-accent) 10%, var(--app-bg-overlay));border:1px solid color-mix(in srgb, var(--app-accent) 28%, transparent);width:88px;height:88px;margin-bottom:var(--space-2);border-radius:50%;place-items:center;display:grid;box-shadow:0 8px 24px #d977571f}.history-empty-icon-wrap>svg{width:30px;height:30px;color:var(--app-accent-warm)}.history-empty-title{font-family:var(--app-font-display);font-weight:var(--weight-regular);font-size:var(--text-xl);line-height:var(--leading-cn-snug);letter-spacing:-.01em;color:var(--app-ink)}.history-empty-hint{font-family:var(--app-font);font-size:var(--text-cn-sm);line-height:var(--leading-cn-normal);color:var(--app-ink-2)}.history-track{perspective:1400px;perspective-origin:50%;transform-style:preserve-3d;cursor:grab;position:absolute;inset:0}.history-track.is-dragging{cursor:grabbing}.history-card{border-radius:var(--radius-lg);background:var(--app-bg-overlay);width:320px;height:420px;transform-style:preserve-3d;will-change:transform;transition:box-shadow var(--duration-slow) var(--ease-default);position:absolute;top:50%;left:50%;overflow:hidden;box-shadow:0 30px 60px -16px #14141352,0 8px 16px -8px #1414132e}.history-card-thumb{background-color:var(--app-bg-overlay);pointer-events:none;background-position:top;background-repeat:no-repeat;background-size:contain;position:absolute;inset:18px 16px 38%}.history-card-thumb.is-empty{background:linear-gradient(135deg, var(--app-bg-raised) 0%, color-mix(in srgb, var(--color-accent-sand) 22%, var(--app-bg-raised)) 100%);color:var(--app-ink-3);place-items:center;font-size:36px;display:grid}.history-card-track-overlay{background:color-mix(in srgb, var(--app-bg) 55%, transparent);pointer-events:none;opacity:calc(.55 - var(--shift,0) * .55);position:absolute;inset:0}.history-card-shade{background:linear-gradient(to top, var(--app-bg-overlay) 0%, color-mix(in srgb, var(--app-bg-overlay) 70%, transparent) 30%, transparent 58%);pointer-events:none;position:absolute;inset:0}.history-card-meta{z-index:2;pointer-events:none;font-family:var(--app-font);flex-direction:column;gap:10px;padding:20px 22px 22px;display:flex;position:absolute;inset:auto 0 0}.history-card-eyebrow{letter-spacing:.18em;text-transform:uppercase;font-size:11px;font-weight:var(--weight-semibold);color:var(--app-accent-warm)}.history-card-tags{flex-wrap:wrap;gap:6px;display:flex}.history-card-tags span{border-radius:var(--radius-full);background:color-mix(in srgb, var(--app-bg-raised) 80%, transparent);border:1px solid var(--app-border);color:var(--app-ink-2);letter-spacing:.02em;align-items:center;padding:3px 10px;font-size:11px;display:inline-flex}.history-card-actions{pointer-events:auto;opacity:var(--shift,0);transform:translateY(calc((1 - var(--shift,0)) * 16px));align-items:center;gap:12px;margin-top:4px;display:flex}.history-card-restore{border-radius:var(--radius-full);border:1px solid var(--app-accent);background:var(--app-accent);color:#fff;font-family:var(--app-font);font-size:13px;font-weight:var(--weight-medium);letter-spacing:.01em;cursor:pointer;transition:transform var(--duration-fast) var(--ease-default), background var(--duration-fast) var(--ease-default), border-color var(--duration-fast) var(--ease-default), box-shadow var(--duration-normal) var(--ease-default);align-items:center;gap:8px;padding:9px 18px;display:inline-flex;box-shadow:0 6px 16px #d9775747}.history-card-restore:hover{background:var(--app-accent-warm);border-color:var(--app-accent-warm);transform:translateY(-1px);box-shadow:0 10px 22px #c9644252}.history-card-restore:active{transform:translateY(0)scale(.97)}.history-card-delete{border-radius:var(--radius-full);border:1px solid var(--app-border);color:var(--app-ink-2);font-family:var(--app-font);cursor:pointer;transition:color var(--duration-fast) var(--ease-default), border-color var(--duration-fast) var(--ease-default), background var(--duration-fast) var(--ease-default);background:0 0;align-items:center;gap:6px;padding:8px 14px;font-size:12px;display:inline-flex}.history-card-delete:hover{color:var(--color-error);border-color:color-mix(in srgb, var(--color-error) 45%, transparent);background:color-mix(in srgb, var(--color-error) 8%, transparent)}.history-card-restore:focus-visible,.history-card-delete:focus-visible{outline:2px solid var(--app-accent);outline-offset:2px}.history-card-frame{border-radius:var(--radius-lg);border:1px solid color-mix(in srgb, var(--app-ink) 8%, transparent);pointer-events:none;position:absolute;inset:0}.export-opt.is-kbd-active{background:#40404080;box-shadow:inset 0 0 0 1.5px #d4d4d48c}.user-layout{min-height:100vh}.user-header.ant-layout-header{z-index:40;height:auto;min-height:64px;padding:calc(10px + env(safe-area-inset-top,0px)) calc(16px + env(safe-area-inset-right,0px)) 10px calc(16px + env(safe-area-inset-left,0px));background:color-mix(in srgb, var(--color-bg-overlay) 88%, transparent);-webkit-backdrop-filter:saturate(180%)blur(14px);backdrop-filter:saturate(180%)blur(14px);border-bottom:1px solid var(--color-border-subtle);align-items:center;line-height:1.3;display:flex;position:sticky;top:0}.user-header-inner{flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:12px;width:min(1280px,100%);margin:0 auto;display:flex}.user-header-desktop{flex:1;justify-content:space-between;align-items:center;gap:16px;min-width:0;display:flex}.user-header-links,.user-header-actions{flex-wrap:nowrap;align-items:center;gap:8px;display:flex}.user-header-menu-btn.ant-btn{display:none}.user-header-menu{flex-direction:column;gap:20px;display:flex}.user-header-menu-group{flex-direction:column;gap:8px;display:flex}.user-brand{color:inherit;white-space:nowrap;flex-shrink:0;align-items:center;gap:10px;min-height:44px;display:inline-flex}.user-brand-mark{background:var(--color-accent-orange);color:#fff;border-radius:50%;place-items:center;width:32px;height:32px;display:grid}.user-content.ant-layout-content{padding:0}.user-layout--editor{height:100dvh}.user-layout--editor .user-content.ant-layout-content{flex:1;min-height:0;overflow:hidden}body.is-app{-webkit-overflow-scrolling:touch;overflow:clip auto}.user-layout--page .user-content.ant-layout-content{padding:32px 20px 64px}.account-wrap{width:min(440px,100%);margin:0 auto}.landing-sections{gap:48px;width:min(1100px,100%);margin:0 auto;padding:48px 20px 72px;display:grid}.landing-section-head{gap:8px;margin-bottom:24px;display:grid}.landing-section-head .ant-typography{margin-bottom:0}.landing-section-lead{max-width:40em;margin-bottom:0}.landing-feature-card{height:100%}.landing-feature-card .ant-card-body{min-height:180px}.landing-feature-card .ant-typography{margin-bottom:8px}.landing-feature-icon{background:color-mix(in srgb, var(--color-accent-orange) 16%, transparent);width:40px;height:40px;color:var(--color-accent-orange);border-radius:12px;place-items:center;margin-bottom:16px;font-size:18px;display:grid}.hero-hint{margin-top:12px;margin-bottom:0}.landing-cta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;display:flex}.landing-cta-band .ant-card-body{padding:28px 24px}.legal-wrap{width:min(720px,100%);margin:0 auto}.contact-wrap{width:min(640px,100%);margin:0 auto}.contact-lead{margin-bottom:0}.contact-card{margin-top:20px}.contact-card .ant-card-head-title{font-weight:600}.contact-wechat{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.contact-skills{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.legal-wrap .ant-typography{margin-bottom:12px}.site-footer{padding:20px 16px calc(20px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--color-border-subtle);text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:16px 24px;display:flex}.site-footer-links{gap:16px;display:flex}.site-footer-links a{align-items:center;min-height:44px;display:inline-flex}@media (width<=900px){.user-layout.user-layout--editor.ant-layout{height:auto;min-height:100dvh;overflow:visible}.user-layout--editor .user-content.ant-layout-content{flex:none;height:auto;min-height:auto;overflow:visible}}@media (width<=879px){.user-header-desktop{display:none}.user-header-menu-btn.ant-btn{display:inline-flex}.user-layout--page .user-content.ant-layout-content{padding:20px 16px 48px}.account-wrap,.landing-sections{width:100%}.landing-sections{gap:32px;padding:32px 16px 56px}.landing-cta{flex-direction:column;align-items:stretch}}.editor-workspace{grid-template-columns:minmax(300px,400px) minmax(0,1fr);gap:16px;height:100%;padding:16px;display:grid}.editor-card{flex-direction:column;height:100%;min-height:0;display:flex}.editor-card .ant-card-body{flex-direction:column;flex:1;min-height:0;padding:16px;display:flex}.editor-card--preview .ant-card-body{padding:0}.editor-input-stack{flex-direction:column;gap:12px;height:100%;min-height:0;display:flex}.editor-input-stack .sql-editor-frame{flex:1;min-height:220px}.editor-preview-header{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.editor-preview-header-actions{margin-left:auto}.editor-preview-body{flex-direction:column;height:100%;min-height:0;display:flex;position:relative}:is(.editor-preview-body:fullscreen,.editor-preview-body.editor-preview-body--immersive){z-index:2000;background:var(--color-bg-overlay,#fdfcf8);width:100%;height:100dvh;max-height:100dvh;padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px);position:fixed;inset:0}:is(.editor-preview-body:fullscreen .diagram-container,.editor-preview-body.editor-preview-body--immersive .diagram-container){touch-action:none;flex:1;height:auto;min-height:0;max-height:none}body.editor-preview-immersive{overflow:hidden}.editor-preview-tools{z-index:20;flex-direction:column;align-items:center;gap:8px;display:flex;position:absolute;top:12px;right:12px}.editor-font-slider{height:120px}.editor-legend{flex-wrap:wrap;gap:8px;display:flex}.editor-legend--measure{visibility:hidden;position:absolute;left:-10000px}@media (width<=900px){.editor-workspace{height:auto;min-height:0;padding:12px;padding-bottom:calc(12px + env(safe-area-inset-bottom,0px));grid-template-columns:1fr;gap:12px}.editor-card{height:auto;min-height:0}.editor-card--preview{min-height:0}.editor-card--preview .ant-card-head{padding-inline:12px}.editor-preview-header-actions{width:100%;margin-left:0}.editor-preview-body{height:auto;min-height:0}.editor-preview-body .diagram-container{touch-action:pan-y;flex:none;height:min(52vh,420px);min-height:280px}.editor-input-stack .sql-editor-frame{min-height:180px;max-height:40vh}}.share-readonly-banner{border-radius:8px;margin:0 0 12px}.share-page-loading{justify-content:center;align-items:center;min-height:40vh;display:flex}.auth-layout{--auth-paper:#ece9e0;--auth-paper-raised:#fdfcf8;--auth-ink:#141413;--auth-ink-soft:#6b6860;--auth-cream:#faf6ef;--auth-accent:#d97757;--auth-accent-soft:#f3d2c4;--auth-night-1:#2a1c16;--auth-night-2:#14110f;--auth-night-3:#1c1410;--auth-control-h:48px;background:var(--auth-paper);min-height:100dvh;color:var(--auth-ink);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;grid-template-rows:auto 1fr;grid-template-columns:1fr;display:grid;overflow-x:clip}.auth-aside{min-width:0;min-height:calc(56px + env(safe-area-inset-top,0px));color:var(--auth-cream);background:radial-gradient(900px 420px at 12% 0%, #d9775752, transparent 56%), linear-gradient(165deg, var(--auth-night-1) 0%, var(--auth-night-2) 70%, var(--auth-night-3) 100%);flex-direction:column;display:flex;position:relative;overflow:hidden}.auth-aside:after{content:"";pointer-events:none;opacity:.14;background-image:radial-gradient(#f5f0e859 .6px,#0000 .7px);background-size:3px 3px;position:absolute;inset:0}.auth-constellation{display:none}.auth-aside-inner{z-index:1;min-height:56px;padding:calc(8px + env(safe-area-inset-top,0px)) 16px 8px;flex-direction:row;justify-content:space-between;align-items:center;gap:12px;display:flex;position:relative}.auth-brand,.auth-back,.auth-main .account-wrap a{cursor:pointer}.auth-brand{color:inherit;letter-spacing:.04em;align-items:center;gap:10px;min-width:0;min-height:44px;font-weight:600;display:inline-flex}.auth-brand-mark{background:var(--auth-accent);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:32px;height:32px;display:grid}.auth-aside-copy{display:none}.auth-aside-kicker{letter-spacing:.16em;text-transform:uppercase;color:#f5f0e89e;margin:0;font-size:.78rem}.auth-aside-title{color:var(--auth-cream);letter-spacing:-.03em;margin:12px 0 0;font-size:clamp(2.1rem,3.4vw,3.2rem);font-weight:600;line-height:1.12}.auth-aside-lead{color:#f5f0e8c7;margin:16px 0 0;font-size:1.05rem;line-height:1.55}.auth-aside-note{letter-spacing:.12em;width:fit-content;color:var(--auth-accent-soft);border:1px solid #f5f0e83d;border-radius:999px;margin:20px 0 0;padding:6px 12px;font-size:.78rem}.auth-back{min-height:44px;color:var(--auth-accent-soft);flex-shrink:0;align-items:center;display:inline-flex}.auth-back:hover{color:#fff}.auth-main{min-width:0;padding:24px 20px calc(32px + env(safe-area-inset-bottom,0px));background:var(--auth-paper);color:var(--auth-ink);justify-content:center;align-items:flex-start;display:flex}.auth-main .account-wrap{box-sizing:border-box;width:100%;min-width:0;max-width:400px;margin:0}.auth-main .auth-form-title{color:var(--auth-ink);letter-spacing:-.03em;margin:0;font-size:1.75rem;font-weight:600}.auth-main .auth-form-lead{color:var(--auth-ink-soft);margin:8px 0 24px;font-size:1rem;line-height:1.5}.auth-main .account-wrap .ant-input-lg,.auth-main .account-wrap .ant-input-affix-wrapper-lg{box-sizing:border-box;width:100%;max-width:100%;height:var(--auth-control-h);min-height:var(--auth-control-h);align-items:center;font-size:16px}.auth-main .account-wrap .ant-input-affix-wrapper .ant-input{background:0 0;height:100%;min-height:0;font-size:16px}.auth-main .account-wrap .ant-input-suffix{align-items:center;margin-inline-start:8px;display:flex}.auth-main .account-wrap .ant-input-password-icon{justify-content:center;align-items:center;margin:-6px;padding:6px;line-height:1;display:inline-flex}.auth-main .account-wrap .ant-input-password-icon svg,.auth-main .account-wrap .anticon svg{width:1em;max-width:none;height:1em;display:block}.auth-main .account-wrap .ant-btn-primary{width:100%;max-width:100%;min-height:var(--auth-control-h);letter-spacing:.04em;touch-action:manipulation;justify-content:center;align-items:center;font-weight:600;display:inline-flex}.auth-main .account-legal{color:var(--auth-ink-soft);overflow-wrap:break-word;margin-top:16px;margin-bottom:0;font-size:.88rem;line-height:1.55}.auth-main .account-legal a,.auth-main .account-wrap .ant-checkbox-wrapper a{color:var(--auth-accent)}.auth-main .account-wrap .ant-checkbox-wrapper{white-space:normal}.auth-main .account-switch{margin-top:20px;margin-bottom:0}@keyframes auth-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes auth-breathe{0%,to{opacity:.85;transform:translate(0,0)scale(1)}50%{opacity:1;transform:translateY(-6px)scale(1.015)}}@media (width>=1024px){.auth-layout{grid-template-rows:1fr;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr)}.auth-aside{background:radial-gradient(1100px 640px at 12% 16%, #d977575c, transparent 54%), radial-gradient(820px 480px at 90% 90%, #c9644233, transparent 50%), linear-gradient(165deg, var(--auth-night-1) 0%, var(--auth-night-2) 58%, var(--auth-night-3) 100%);min-height:100dvh}.auth-aside:after{opacity:.16}.auth-constellation{color:#f5f0e824;pointer-events:none;width:min(78%,440px);height:auto;animation:8s ease-in-out infinite auth-breathe;display:block;position:absolute;bottom:0;right:0;transform:translate(6%,4%)}.auth-aside-inner{flex-direction:column;flex:1;justify-content:space-between;align-items:stretch;min-height:100%;padding:40px 48px 36px;animation:.4s ease-out both auth-rise}.auth-brand{gap:12px}.auth-brand-mark{width:40px;height:40px;box-shadow:0 0 0 8px #d9775729}.auth-aside-copy{max-width:16em;padding:32px 0;display:block}.auth-main{align-items:center;padding:48px 32px}.auth-main .account-wrap{max-width:360px;animation:.42s ease-out 60ms both auth-rise}.auth-main .auth-form-title{font-size:clamp(1.6rem,2.2vw,2rem)}}@media (prefers-reduced-motion:reduce){.auth-aside-inner,.auth-main .account-wrap,.auth-constellation{animation:none}}.admin-boot{background:var(--color-bg-base,#ece9e0);place-items:center;min-height:100dvh;display:grid}.admin-shell{height:100dvh;min-height:100dvh;overflow:hidden}.admin-shell>.admin-sider.ant-layout-sider{flex-shrink:0;height:100dvh;position:sticky;top:0;overflow:hidden}.admin-shell .admin-sider .ant-layout-sider-children{flex-direction:column;height:100%;display:flex;overflow:hidden}.admin-shell .admin-sider .ant-menu-dark{flex:1;min-height:0;overflow-y:auto}.admin-main.ant-layout{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;overflow:hidden}.admin-shell .admin-sider.ant-layout-sider,.admin-shell .admin-sider .ant-layout-sider-children{background:#1a1916!important}.admin-sider-brand{color:#f5f3ec;align-items:center;gap:10px;min-height:64px;padding:12px 20px;font-weight:600;display:flex}.admin-sider-brand small{letter-spacing:.08em;color:#a9a69c;font-size:11px;font-weight:500;display:block}.admin-sider-brand-mark{background:var(--color-accent-orange);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:28px;height:28px;display:grid}.admin-shell .ant-menu-dark,.admin-drawer .admin-menu.ant-menu-dark{background:0 0;padding:8px;border-inline-end:none!important}.admin-shell .ant-menu-dark .ant-menu-item-selected,.admin-drawer .admin-menu.ant-menu-dark .ant-menu-item-selected{background:color-mix(in srgb, var(--color-accent-orange) 28%, #1a1916)!important;color:#fff!important}.admin-drawer-root .ant-drawer-header{padding:12px 16px}.admin-drawer-root .ant-drawer-header-title{flex:1;min-width:0}.admin-drawer-root .ant-drawer-close{color:#f5f3ecd1!important}.admin-drawer-root .ant-drawer-close:hover{color:#fff!important;background:#ffffff14!important}.admin-drawer .admin-menu.ant-menu-dark .ant-menu-item,.admin-drawer .admin-menu.ant-menu-dark .ant-menu-item .ant-menu-item-icon,.admin-drawer .admin-menu.ant-menu-dark .ant-menu-item .anticon{color:#f5f3ece0}.admin-drawer .admin-menu.ant-menu-dark .ant-menu-item:hover,.admin-drawer .admin-menu.ant-menu-dark .ant-menu-item-active{color:#fff!important;background:#ffffff0f!important}.admin-drawer .admin-sider-brand{color:#f5f3ec;min-height:auto;padding:0}.admin-header.ant-layout-header{z-index:30;background:var(--color-bg-overlay,#fdfcf8);border-bottom:1px solid var(--color-border-subtle,#e5e0d4);flex-shrink:0;align-items:center;gap:12px;height:64px;padding:0 24px;line-height:1.3;display:flex;position:sticky;top:0}.admin-header-title{flex:1;min-width:0;font-weight:600!important}.admin-header-actions{flex-shrink:0;align-items:center;gap:4px;display:flex}.admin-header-menu-btn.ant-btn{color:var(--color-text-primary,#141413);flex-shrink:0}.admin-header-home-btn .anticon+.admin-header-home-label{margin-inline-start:6px}.admin-content.ant-layout-content{min-height:0;padding:24px;padding-bottom:calc(24px + env(safe-area-inset-bottom,0px));background:var(--color-bg-base,#ece9e0);-webkit-overflow-scrolling:touch;flex:1;overflow:hidden auto}.admin-page{gap:16px;width:100%;min-width:0;max-width:1200px;display:grid}.admin-page-title{margin:0!important}.admin-page-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 16px;display:flex}.admin-stat-card .ant-statistic-title{color:var(--color-text-secondary,#6b6860)}.admin-trend-chart{width:100%;height:320px}.admin-overview-chart{width:100%;height:360px}.admin-toolbar{flex-wrap:wrap;gap:12px;margin-bottom:16px;display:flex}.admin-filter-form{flex-wrap:wrap;gap:12px 16px;margin-bottom:16px;display:flex}.admin-filter-form .ant-form-item{margin-inline-end:0;margin-bottom:0}.admin-filter-actions .ant-form-item-control-input-content{flex-wrap:wrap;gap:8px;display:flex}.admin-mobile-panel{width:100%;min-width:0}.admin-mobile-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.admin-mobile-card{border:1px solid var(--color-border-subtle,#e8e6dc);background:var(--color-bg-overlay,#fdfcf8);border-radius:12px;padding:12px}.admin-mobile-card__head{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:8px;display:flex}.admin-mobile-card__head strong{word-break:break-word;font-size:.9375rem;line-height:1.4}.admin-mobile-card__tags{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;gap:4px;display:flex}.admin-mobile-card__time{color:var(--color-text-muted,#b0aea5);white-space:nowrap;flex-shrink:0;font-size:.75rem}.admin-mobile-card__row{gap:8px;padding:2px 0;font-size:.8125rem;line-height:1.55;display:flex}.admin-mobile-card__label{color:var(--color-text-muted,#b0aea5);flex:0 0 4.2em}.admin-mobile-card__value{word-break:break-word;min-width:0;color:var(--color-text-secondary,#6b6860);flex:1}.admin-mobile-card__actions{border-top:1px solid var(--color-border-subtle,#e8e6dc);justify-content:flex-end;margin-top:10px;padding-top:8px;display:flex}.admin-mobile-pagination.ant-pagination{flex-wrap:wrap;justify-content:center;row-gap:8px;margin-top:16px;display:flex}.admin-mobile-empty{text-align:center;color:var(--color-text-muted,#b0aea5);padding:32px 12px;font-size:.875rem}.admin-table-panel .ant-card-body{overflow:hidden}.admin-table-panel .ant-table-wrapper{width:100%;max-width:100%}.admin-data-table .ant-table{table-layout:fixed}.admin-filter-input{width:100%;min-width:0;max-width:100%}@media (width>=640px){.admin-filter-input--path,.admin-filter-input--ip{width:140px}.admin-filter-input--user{width:160px}.admin-filter-input--date{width:148px}}.admin-drawer .admin-sider-brand{padding:0}@media (width<=991px){.admin-shell{height:100dvh}.admin-content.ant-layout-content{padding:12px;padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}.admin-header.ant-layout-header{height:auto;min-height:56px;padding:calc(8px + env(safe-area-inset-top,0px)) 12px 8px;flex-wrap:wrap;gap:8px}.admin-header-title{flex:100%;order:2;font-size:1rem}.admin-header-menu-btn.ant-btn{order:1}.admin-header-actions{order:1;margin-left:auto}.admin-header-email{display:none!important}.admin-header-home-label,.admin-header-logout-label{display:none}.admin-header-home-btn.ant-btn,.admin-header-logout-btn.ant-btn{min-width:40px;padding-inline:10px}.admin-page-head{flex-direction:column;align-items:flex-start}.admin-page-title.ant-typography{font-size:1.25rem!important}.admin-trend-chart{height:260px}.admin-overview-chart{height:280px}.admin-filter-form{gap:10px;margin-bottom:14px;display:grid}.admin-filter-form.ant-form-vertical .ant-form-item{margin-bottom:0}.admin-filter-form .ant-select,.admin-filter-form .ant-input,.admin-filter-form .ant-input-number{width:100%}.admin-filter-actions .ant-form-item-control-input-content{grid-template-columns:1fr 1fr;gap:8px;display:grid}.admin-filter-actions .ant-form-item-control-input-content .ant-btn{width:100%}.admin-table-panel .ant-card-body,.admin-page>.ant-card .ant-card-body{padding:12px}}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .admin-header.ant-layout-header,[data-theme=dark] .admin-header.ant-layout-header{background:#222119;border-bottom-color:#2e2d27}:root:not([data-theme=light]) .admin-header-menu-btn.ant-btn,[data-theme=dark] .admin-header-menu-btn.ant-btn{color:#f5f3ec}}.user-brand-mark svg,.auth-brand-mark svg,.admin-sider-brand-mark svg{flex-shrink:0;width:22px;max-width:none;height:22px}.admin-sider-brand-mark svg{width:18px;height:18px}@media (width>=1024px){.auth-brand-mark svg{width:22px;height:22px}}
