.lx{--lx-bg: #ffffff;--lx-stage: #f4f5f5;--lx-stage-ink: #333333;--lx-ink: #262a2d;--lx-muted: #6b7277;--lx-rule: #e2e5e7;--lx-field: #ffffff;--lx-field-border: #cfd4d8;--lx-accent: #65afc8;--lx-accent-wash: #e5f7fb;--lx-accent-text: #2a7690;--lx-btn: #333333;--lx-btn-ink: #ffffff;--lx-danger: #b42318;--lx-danger-wash: #fef3f2;--lx-warn: #93600a;--lx-logo-filter: none;--lx-grain-opacity: .35;--lx-font-latin: "Jost", "Futura", "Century Gothic", system-ui, sans-serif;--lx-font-ja: "Zen Maru Gothic", "Hiragino Maru Gothic ProN", "Yu Gothic", "Meiryo", sans-serif;--lx-font-mincho: "Zen Old Mincho", "Hiragino Mincho ProN", "Yu Mincho", serif;position:relative;min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);background:var(--lx-bg);color:var(--lx-ink);font-family:var(--lx-font-ja);-webkit-font-smoothing:antialiased;overflow-x:hidden}:root.theme-dark .lx{--lx-bg: #16191b;--lx-stage: #1f2326;--lx-stage-ink: #eef1f2;--lx-ink: #eef1f2;--lx-muted: #9aa3a8;--lx-rule: #2f3438;--lx-field: #1c2023;--lx-field-border: #3a4146;--lx-accent-wash: rgba(101, 175, 200, .12);--lx-accent-text: #8ac1d6;--lx-btn: #eef1f2;--lx-btn-ink: #16191b;--lx-danger: #fda29b;--lx-danger-wash: rgba(180, 35, 24, .16);--lx-warn: #fcd28a;--lx-logo-filter: invert(1) brightness(1.6);--lx-grain-opacity: .18}:root.theme-hybrid .lx .lx-stage{--lx-stage: #1f2326;--lx-stage-ink: #eef1f2;--lx-muted: #9aa3a8;--lx-rule: #2f3438;--lx-accent-text: #8ac1d6;--lx-logo-filter: invert(1) brightness(1.6);--lx-grain-opacity: .18}.lx{--lysin-accent: var(--lx-btn);--lysin-bg: var(--lx-btn-ink);--lysin-input-bg: var(--lx-bg);--lysin-border: var(--lx-rule);--lysin-text-muted: var(--lx-muted);--accent-color: var(--lx-accent)}.lx :focus-visible{outline:2px solid var(--lx-accent);outline-offset:3px;border-radius:6px}.lx-stage{position:relative;isolation:isolate;overflow:hidden;background:var(--lx-stage);color:var(--lx-stage-ink);padding:clamp(28px,4vw,56px);display:grid;grid-template-rows:auto 1fr auto;gap:32px}.lx-stage:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;opacity:var(--lx-grain-opacity);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .5 0 0 0 0 .5 0 0 0 0 .5 0 0 0 .09 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.lx-brand{display:flex;align-items:center;gap:14px}.lx-brand img{height:26px;width:auto;filter:var(--lx-logo-filter)}.lx-brand-rule{width:1px;height:18px;background:var(--lx-rule)}.lx-brand-name{font-family:var(--lx-font-latin);font-size:12px;font-weight:500;letter-spacing:.24em;color:var(--lx-muted)}.lx-orbit{position:absolute;z-index:-1;width:min(78vh,62vw);aspect-ratio:1;right:calc(min(78vh,62vw)/-2);top:50%;transform:translateY(-50%);pointer-events:none}.lx-orbit svg{width:100%;height:100%;overflow:visible}.lx-orbit-ring{fill:none;stroke:var(--lx-stage-ink);opacity:.09}.lx-orbit-ring--accent{stroke:var(--lx-accent);opacity:.55;stroke-dasharray:2 10;stroke-linecap:round}.lx-orbit-spin{position:absolute;top:0;right:0;bottom:0;left:0;animation:lx-spin 140s linear infinite}.lx-node{position:absolute;left:50%;top:50%;transform:rotate(var(--a)) translate(calc(min(78vh,62vw)*.4)) rotate(calc(-1 * var(--a)))}.lx-node span{display:inline-flex;align-items:center;gap:6px;transform:translate(-50%,-50%);white-space:nowrap;padding:6px 12px;border-radius:999px;background:var(--lx-bg);border:1px solid var(--lx-rule);font-size:12px;color:var(--lx-muted);box-shadow:0 1px 2px #0000000a;animation:lx-spin 140s linear infinite reverse}.lx-node span:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--lx-accent)}.lx-hero{align-self:center;max-width:560px}.lx-hero-kicker{font-size:13px;color:var(--lx-muted);letter-spacing:.06em;margin:0 0 18px}.lx-hero-kicker b{font-family:var(--lx-font-mincho);font-weight:600;color:var(--lx-stage-ink);font-size:15px}.lx-kana{display:flex;font-family:var(--lx-font-ja);font-weight:700;font-size:clamp(56px,8.2vw,120px);line-height:1;letter-spacing:0;margin:0}.lx-kana span{display:inline-block;width:1em;text-align:center}.lx-kana .lx-a{animation:lx-swap-a 1.1s cubic-bezier(.7,0,.2,1) .9s both}.lx-kana .lx-b{animation:lx-swap-b 1.1s cubic-bezier(.7,0,.2,1) .9s both;color:var(--lx-accent)}@keyframes lx-swap-a{0%{transform:translate(0)}50%{transform:translate(1em,-.28em)}to{transform:translate(2em)}}@keyframes lx-swap-b{0%{transform:translate(0);color:var(--lx-muted)}50%{transform:translate(-1em,.28em)}to{transform:translate(-2em);color:var(--lx-accent)}}.lx-hero-line,.lx-hero-sub,.lx-lede,.lx-demo-note,.lx-error{word-break:auto-phrase;text-wrap:pretty}.lx-hero-line{margin:28px 0 0;font-size:clamp(18px,1.7vw,22px);font-weight:500;line-height:1.7;color:var(--lx-stage-ink)}.lx-hero-sub{margin:10px 0 0;font-size:14px;line-height:1.8;color:var(--lx-muted);max-width:440px}.lx-facts{display:flex;flex-wrap:wrap;gap:28px 40px;margin:0;padding:0}.lx-facts div{min-width:0}.lx-facts dt{font-family:var(--lx-font-latin);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--lx-muted);margin-bottom:6px}.lx-facts dd{margin:0;font-size:15px;font-weight:500}.lx-facts dd small{font-size:12px;color:var(--lx-muted);font-weight:400;margin-left:4px}.lx-motto{position:absolute;top:clamp(28px,4vw,56px);right:clamp(24px,3.4vw,48px);writing-mode:vertical-rl;font-family:var(--lx-font-mincho);font-weight:600;font-size:15px;letter-spacing:.5em;color:var(--lx-stage-ink);opacity:.72;margin:0}.lx-motto small{display:block;font-size:11px;letter-spacing:.3em;color:var(--lx-muted);margin-right:8px}.lx-panel{display:flex;flex-direction:column;padding:clamp(24px,3.2vw,44px) clamp(20px,4vw,64px);background:var(--lx-bg)}.lx-panel-top{display:flex;justify-content:flex-end;align-items:center;gap:10px}.lx-lang{font-family:var(--lx-font-latin);font-size:12px;letter-spacing:.08em;min-height:36px;padding:0 14px;border-radius:999px;border:1px solid var(--lx-rule);background:transparent;color:var(--lx-muted);cursor:pointer;transition:color .15s,border-color .15s}.lx-lang:hover{color:var(--lx-ink);border-color:var(--lx-field-border)}.lx-form-wrap{flex:1;display:flex;align-items:center;justify-content:center;padding:40px 0}.lx-form{width:100%;max-width:400px}.lx-eyebrow{display:inline-flex;align-items:center;gap:8px;margin:0 0 18px;font-family:var(--lx-font-latin);font-size:11px;font-weight:500;letter-spacing:.22em;color:var(--lx-accent-text)}.lx-eyebrow:before{content:"";width:18px;height:1px;background:currentColor}.lx-title{margin:0;font-family:var(--lx-font-latin);font-weight:500;font-size:40px;letter-spacing:-.01em;line-height:1.1;display:flex;align-items:baseline;flex-wrap:wrap;gap:12px}.lx-title-tag{font-size:11px;font-weight:500;letter-spacing:.18em;padding:4px 8px;border-radius:6px;background:var(--lx-accent-wash);color:var(--lx-accent-text);transform:translateY(-6px)}.lx-lede{margin:12px 0 32px;font-size:14px;line-height:1.8;color:var(--lx-muted)}.lx-tabs{display:grid;grid-template-columns:1fr 1fr;padding:4px;border-radius:12px;background:var(--lx-stage);border:1px solid var(--lx-rule);margin-bottom:28px;position:relative}.lx-tab-thumb{position:absolute;top:4px;bottom:4px;left:4px;width:calc(50% - 4px);border-radius:9px;background:var(--lx-bg);box-shadow:0 1px 3px #00000014,0 0 0 1px var(--lx-rule);transition:transform .32s cubic-bezier(.3,.7,.2,1)}.lx-tabs[data-mode=demo] .lx-tab-thumb{transform:translate(100%)}.lx-tab{position:relative;min-height:40px;border:0;background:transparent;font:inherit;font-size:14px;font-weight:500;color:var(--lx-muted);cursor:pointer;border-radius:9px;transition:color .2s}.lx-tab[aria-selected=true]{color:var(--lx-ink)}.lx-pane{animation:lx-rise .35s cubic-bezier(.2,.7,.2,1) both}.lx-label{display:flex;justify-content:space-between;align-items:baseline;font-size:13px;font-weight:500;margin-bottom:8px}.lx-label span{font-weight:400;color:var(--lx-muted);font-size:12px}.lx-field{position:relative;display:flex;align-items:center;border:1px solid var(--lx-field-border);border-radius:12px;background:var(--lx-field);transition:border-color .15s,box-shadow .15s}.lx-field:focus-within{border-color:var(--lx-accent);box-shadow:0 0 0 4px var(--lx-accent-wash)}.lx-field[data-invalid=true]{border-color:var(--lx-danger)}.lx-field[data-invalid=true]:focus-within{box-shadow:0 0 0 4px var(--lx-danger-wash)}.lx-field.is-shaking{animation:lx-shake .38s cubic-bezier(.36,.07,.19,.97)}.lx-field svg.lx-field-icon{margin-left:14px;color:var(--lx-muted);flex:none}.lx-input{flex:1;min-width:0;height:50px;border:0;background:transparent;padding:0 12px;font-family:var(--lx-font-latin);font-size:16px;letter-spacing:.04em;color:var(--lx-ink);outline:none}.lx .lx-input:focus{outline:none!important}.lx :focus:not(:focus-visible){outline:none!important}.lx-input::placeholder{font-family:var(--lx-font-ja);letter-spacing:0;color:var(--lx-muted);opacity:.8;font-size:14px}.lx-reveal{display:grid;place-items:center;width:44px;height:44px;margin-right:3px;border:0;border-radius:9px;background:transparent;color:var(--lx-muted);cursor:pointer}.lx-reveal:hover{color:var(--lx-ink);background:var(--lx-stage)}.lx-hint{display:flex;align-items:center;gap:6px;min-height:20px;margin:10px 0 0;font-size:12px;color:var(--lx-muted)}.lx-hint--warn{color:var(--lx-warn)}.lx-error{display:flex;gap:8px;align-items:flex-start;margin:12px 0 0;padding:10px 12px;border-radius:10px;background:var(--lx-danger-wash);color:var(--lx-danger);font-size:13px;line-height:1.5}.lx-error svg{flex:none;margin-top:2px}.lx-submit{margin-top:22px;width:100%;min-height:52px;display:inline-flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:12px;background:var(--lx-btn);color:var(--lx-btn-ink);font:inherit;font-size:15px;font-weight:700;letter-spacing:.04em;cursor:pointer;transition:transform .12s,box-shadow .2s,opacity .2s;box-shadow:0 1px 2px #0000001f}.lx-submit:hover{box-shadow:0 6px 20px -8px #00000073}.lx-submit:active{transform:scale(.985)}.lx-submit:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.lx-submit svg.lx-arrow{transition:transform .2s}.lx-submit:hover:not(:disabled) svg.lx-arrow{transform:translate(3px)}.lx-spinner{width:16px;height:16px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:lx-spin .7s linear infinite}.lx-demo-note{margin:0 0 18px;font-size:13px;line-height:1.8;color:var(--lx-muted)}.lx-roles{display:grid;grid-template-columns:1fr 1fr;gap:10px;border:0;padding:0;margin:0}.lx-roles legend{font-size:13px;font-weight:500;margin-bottom:10px;padding:0}.lx-role{position:relative;display:flex;flex-direction:column;gap:8px;padding:14px;border:1px solid var(--lx-field-border);border-radius:12px;cursor:pointer;transition:border-color .15s,background .15s}.lx-role:hover{border-color:var(--lx-muted)}.lx-role input{position:absolute;opacity:0;pointer-events:none}.lx-role:has(input:checked){border-color:var(--lx-accent);background:var(--lx-accent-wash)}.lx-role:has(input:focus-visible){outline:2px solid var(--lx-accent);outline-offset:2px}.lx-role svg{color:var(--lx-muted)}.lx-role:has(input:checked) svg{color:var(--lx-accent-text)}.lx-role b{font-size:14px;font-weight:500}.lx-role small{font-family:var(--lx-font-latin);font-size:11px;letter-spacing:.08em;color:var(--lx-muted)}.lx-panel-foot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 20px;padding-top:20px;border-top:1px solid var(--lx-rule);font-size:12px;color:var(--lx-muted)}.lx-readonly{display:inline-flex;align-items:center;gap:6px}.lx-foot-links{display:flex;gap:16px;align-items:center}.lx-foot-links a{color:inherit;text-decoration:none}.lx-foot-links a:hover{color:var(--lx-ink);text-decoration:underline;text-underline-offset:3px}.lx-in{animation:lx-rise .7s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--i, 0) * 80ms + .1s)}@keyframes lx-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes lx-spin{to{transform:rotate(360deg)}}@keyframes lx-shake{20%,60%{transform:translate(-5px)}40%,80%{transform:translate(5px)}}@media (prefers-reduced-motion: reduce){.lx *,.lx *:before{animation-duration:1ms!important;animation-delay:0ms!important;transition-duration:1ms!important}.lx-orbit-spin,.lx-node span{animation:none!important}}@media (max-width: 960px){.lx{grid-template-columns:minmax(0,1fr)}.lx-stage{padding:20px 16px 28px;gap:22px}.lx-hero{max-width:none}.lx-kana{font-size:clamp(48px,15vw,84px)}.lx-hero-line{margin-top:18px}.lx-hero-sub,.lx-motto{display:none}.lx-facts{gap:16px 28px}.lx-facts dd{font-size:14px}.lx-orbit{width:120vw;right:-62vw;top:-30vw;transform:none}.lx-orbit-spin{display:none}.lx-panel{padding:16px 16px 24px}.lx-panel-top{justify-content:space-between}.lx-form-wrap{padding:8px 0 32px}.lx-title{font-size:32px}}@media (max-width: 380px){.lx-roles{grid-template-columns:1fr}.lx-facts>div:nth-child(3){display:none}}:root{--lysin-bg: #f8fafc;--lysin-surface: #ffffff;--lysin-card: #ffffff;--lysin-border: #e2e8f0;--lysin-text: #0f172a;--lysin-text-muted: #64748b;--lysin-accent: #2563eb;--lysin-accent-dim: rgba(37, 99, 235, .06);--lysin-ok: #10b981;--lysin-warn: #f59e0b;--lysin-danger: #ef4444;--lysin-pink: #db2777;--lysin-input-bg: #ffffff;--lysin-shadow: rgba(15, 23, 42, .04);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 28px;--space-8: 32px;--space-9: 36px;--space-10: 40px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 20px;--bg-color: var(--lysin-bg);--sidebar-bg: var(--lysin-surface);--card-bg: var(--lysin-card);--text-primary: var(--lysin-text);--text-secondary: var(--lysin-text-muted);--border-color: var(--lysin-border);--accent-color: var(--lysin-accent);--accent-glow: var(--lysin-accent-dim);--input-bg: var(--lysin-input-bg);--shadow-color: var(--lysin-shadow);--sidebar-text: var(--lysin-text-muted);--sidebar-text-active: var(--lysin-accent);--status-success: var(--lysin-ok);--status-warning: var(--lysin-warn);--status-danger: var(--lysin-danger);--status-info: var(--lysin-accent);--status-pink: var(--lysin-pink)}.theme-light{--lysin-bg: #f8fafc;--lysin-surface: #ffffff;--lysin-card: #ffffff;--lysin-border: #e2e8f0;--lysin-text: #0f172a;--lysin-text-muted: #64748b;--lysin-accent: #2563eb;--lysin-accent-dim: rgba(37, 99, 235, .06);--lysin-ok: #10b981;--lysin-warn: #f59e0b;--lysin-danger: #ef4444;--lysin-pink: #db2777;--lysin-input-bg: #ffffff;--lysin-shadow: rgba(15, 23, 42, .04);--bg-color: var(--lysin-bg);--sidebar-bg: var(--lysin-surface);--card-bg: var(--lysin-card);--text-primary: var(--lysin-text);--text-secondary: var(--lysin-text-muted);--border-color: var(--lysin-border);--accent-color: var(--lysin-accent);--accent-glow: var(--lysin-accent-dim);--input-bg: var(--lysin-input-bg);--shadow-color: var(--lysin-shadow);--sidebar-text: var(--lysin-text-muted);--sidebar-text-active: var(--lysin-accent);--status-success: var(--lysin-ok);--status-warning: var(--lysin-warn);--status-danger: var(--lysin-danger);--status-info: var(--lysin-accent);--status-pink: var(--lysin-pink)}.dark,.theme-dark{--lysin-bg: #0b0f19;--lysin-surface: #111827;--lysin-card: #1f2937;--lysin-border: #374151;--lysin-text: #f9fafb;--lysin-text-muted: #9ca3af;--lysin-accent: #3b82f6;--lysin-accent-dim: rgba(59, 130, 246, .12);--lysin-ok: #10b981;--lysin-warn: #f59e0b;--lysin-danger: #ef4444;--lysin-pink: #ec4899;--lysin-input-bg: #1f2937;--lysin-shadow: rgba(0, 0, 0, .4);--bg-color: var(--lysin-bg);--sidebar-bg: var(--lysin-surface);--card-bg: var(--lysin-card);--text-primary: var(--lysin-text);--text-secondary: var(--lysin-text-muted);--border-color: var(--lysin-border);--accent-color: var(--lysin-accent);--accent-glow: var(--lysin-accent-dim);--input-bg: var(--lysin-input-bg);--shadow-color: var(--lysin-shadow);--sidebar-text: var(--lysin-text-muted);--sidebar-text-active: var(--lysin-accent);--status-success: var(--lysin-ok);--status-warning: var(--lysin-warn);--status-danger: var(--lysin-danger);--status-info: var(--lysin-accent);--status-pink: var(--lysin-pink)}.theme-hybrid{--lysin-bg: #f8fafc;--lysin-surface: #0f172a;--lysin-card: #ffffff;--lysin-border: #e2e8f0;--lysin-text: #0f172a;--lysin-text-muted: #64748b;--lysin-accent: #2563eb;--lysin-accent-dim: rgba(37, 99, 235, .08);--lysin-ok: #10b981;--lysin-warn: #f59e0b;--lysin-danger: #ef4444;--lysin-pink: #db2777;--lysin-input-bg: #ffffff;--lysin-shadow: rgba(15, 23, 42, .04);--bg-color: var(--lysin-bg);--sidebar-bg: var(--lysin-surface);--card-bg: var(--lysin-card);--text-primary: var(--lysin-text);--text-secondary: var(--lysin-text-muted);--border-color: var(--lysin-border);--accent-color: var(--lysin-accent);--accent-glow: var(--lysin-accent-dim);--input-bg: var(--lysin-input-bg);--shadow-color: var(--lysin-shadow);--sidebar-text: #94a3b8;--sidebar-text-active: #3b82f6;--status-success: var(--lysin-ok);--status-warning: var(--lysin-warn);--status-danger: var(--lysin-danger);--status-info: var(--lysin-accent);--status-pink: var(--lysin-pink)}*{box-sizing:border-box;margin:0;padding:0}body{margin:0;padding:0;background-color:var(--bg-color);color:var(--text-primary);font-family:Outfit,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;transition:background-color .3s ease,color .3s ease}button:focus,a:focus,input:focus,select:focus,textarea:focus,[tabindex]:focus{outline:2px solid var(--accent-color)!important;outline-offset:2px!important}.recharts-wrapper{touch-action:pan-y!important;-webkit-user-select:none;user-select:none}.recharts-tooltip-wrapper{pointer-events:none!important}.theme-light ::-webkit-scrollbar-track{background:var(--bg-color)!important}.theme-light ::-webkit-scrollbar-thumb{background:var(--border-color)!important}.pulse-loader{animation:pulse-loader-anim 2s infinite ease-in-out}@keyframes pulse-loader-anim{0%,to{opacity:.6;transform:scale(.98)}50%{opacity:1;transform:scale(1.02)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.sidebar-drawer,.modal-overlay,.theme-transition-active{will-change:transform,opacity;transform:translateZ(0);backface-visibility:hidden}@media (max-width: 768px){button,[role=button],.alert-btn,.role-selector-btn{min-height:44px!important;min-width:44px!important;box-sizing:border-box!important}}.lysin-table-scroll{overflow:auto;max-height:68vh}.lysin-table-scroll thead th{position:sticky;top:0;z-index:2;background-color:var(--lysin-surface);box-shadow:0 1px 0 var(--lysin-border)}
