.lf-app{display:flex;flex-direction:column;height:calc(100vh - 5rem);background:#f0ede8;overflow:hidden}.lf-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.55rem;padding:0 .72rem;height:46px;flex-shrink:0;background:#0f172a;border-bottom:1px solid rgba(255,255,255,.08)}.lf-tb-brand{font-weight:800;font-size:.92rem;color:#fff!important;letter-spacing:-.01em;white-space:nowrap}.lf-tabs{display:flex;gap:.22rem}.lf-tab{padding:.34rem .72rem;border-radius:.5rem;border:none;background:transparent;cursor:pointer;font-size:.76rem;font-weight:600;color:#ffffff8c!important;transition:all .13s ease}.lf-tab:hover{background:#ffffff14;color:#ffffffd9!important}.lf-tab.is-active{background:#ffffff26;color:#fff!important}.lf-tb-right{display:flex;align-items:center;gap:.35rem}.lf-icon-btn{width:28px;height:28px;border:1px solid rgba(255,255,255,.18);border-radius:.38rem;background:#ffffff14;cursor:pointer;font-size:.9rem;font-weight:700;display:flex;align-items:center;justify-content:center;color:#fff!important;transition:all .12s ease}.lf-icon-btn:hover{background:#ffffff2e}.lf-zoom-pct{font-size:.68rem;font-weight:700;color:#ffffff8c!important;min-width:36px;text-align:center}.lf-add-btn{padding:.3rem .72rem;border-radius:.44rem;border:none;background:#f59e0b;color:#0f172a!important;font-size:.74rem;font-weight:800;cursor:pointer;transition:background .13s ease}.lf-add-btn:hover{background:#fbbf24}.lf-body{flex:1;overflow:hidden;display:grid;grid-template-columns:210px minmax(0,1fr)}.lf-app.is-canvas-focus .lf-body{grid-template-columns:0 minmax(0,1fr)}.lf-app.is-canvas-focus .lf-side:not(.lf-right){display:none}.lf-side{background:#fff;border-right:1px solid rgba(203,213,225,.65);overflow-y:auto;padding:.58rem .55rem}.lf-panel-scrim{position:fixed;left:0;right:0;top:calc(5rem + 46px);bottom:4.75rem;border:none;background:#0f172a61;z-index:250;cursor:pointer}.lf-panel-scrim[hidden]{display:none!important}.lf-right{position:fixed;right:0;top:5rem;height:calc(100vh - 5rem - 46px);width:276px;background:#fff;border-left:1px solid rgba(203,213,225,.75);box-shadow:-4px 0 24px #0f172a1a;overflow-y:auto;padding:.85rem .75rem;transform:translate(100%);transition:transform .22s cubic-bezier(.4,0,.2,1);z-index:200}.lf-right.is-open{transform:translate(0)}.lf-detail-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.65rem}.lf-detail-close{width:26px;height:26px;border-radius:.38rem;border:1px solid #e2e8f0;background:#f8fafc;cursor:pointer;font-size:.8rem;display:flex;align-items:center;justify-content:center;color:#64748b!important;transition:all .12s ease}.lf-detail-close:hover{background:#fee2e2;color:#ef4444!important;border-color:#fca5a5}.lf-side-kicker{font-size:.56rem;font-weight:800;text-transform:uppercase;letter-spacing:.2em;color:#b45309!important;margin:0 0 .45rem}.lf-side-list{display:flex;flex-direction:column;gap:.2rem}.lf-list-btn{display:flex;align-items:center;gap:.42rem;padding:.4rem .46rem;border-radius:.58rem;border:1.5px solid transparent;background:transparent;cursor:pointer;transition:all .13s ease;width:100%;text-align:left}.lf-list-btn:hover{background:#f8fafc;border-color:#e2e8f0}.lf-list-btn.is-active{background:color-mix(in oklab,var(--tc) 10%,white);border-color:color-mix(in oklab,var(--tc) 36%,transparent)}.lf-list-icon{font-size:.92rem;width:1.72rem;height:1.72rem;display:flex;align-items:center;justify-content:center;border-radius:.42rem;background:color-mix(in oklab,var(--tc) 13%,#f8fafc);flex-shrink:0}.lf-list-name{font-weight:700;font-size:.78rem;color:#0f172a!important;margin:0;line-height:1.14}.lf-list-sub{font-size:.64rem;color:#64748b!important;margin:.05rem 0 0;line-height:1.16}.lf-mt-new{width:100%;padding:.42rem .65rem;border-radius:.62rem;border:1.5px dashed #cbd5e1;background:transparent;cursor:pointer;font-size:.78rem;font-weight:600;color:#64748b!important;transition:all .13s ease;margin-bottom:.6rem}.lf-mt-new:hover{border-color:#94a3b8;color:#334155!important;background:#f8fafc}.lf-mt-item{display:flex;align-items:center;gap:.45rem;padding:.45rem .55rem;border-radius:.65rem;border:1.5px solid transparent;cursor:pointer;transition:all .13s ease}.lf-mt-item:hover{background:#f8fafc;border-color:#e2e8f0}.lf-mt-item.is-active{background:#f0fdf4;border-color:#86efac}.lf-mt-item-name{font-size:.82rem;font-weight:700;color:#0f172a!important;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lf-mt-del{width:22px;height:22px;border-radius:.35rem;border:none;background:transparent;cursor:pointer;color:#94a3b8!important;font-size:.8rem;flex-shrink:0;display:flex;align-items:center;justify-content:center}.lf-mt-del:hover{background:#fee2e2;color:#ef4444!important}.lf-mt-guide{margin-bottom:.62rem;padding:.52rem;border:1px solid #dbeafe;border-radius:.62rem;background:#f8fbff}.lf-mt-guide-title{font-size:.68rem;font-weight:800;color:#1e3a8a!important;margin:0 0 .42rem;letter-spacing:.02em;text-transform:uppercase}.lf-mt-guide-row{display:grid;gap:.36rem}.lf-mt-step-btn{width:100%;text-align:left;padding:.36rem .5rem;border-radius:.48rem;border:1px solid #cbd5e1;background:#fff;color:#334155!important;font-size:.73rem;font-weight:700;cursor:pointer}.lf-mt-step-btn:hover{border-color:#93c5fd;background:#eff6ff;color:#1e3a8a!important}.lf-mt-step-btn.is-disabled{opacity:.55;cursor:not-allowed}.lf-mt-guide-note{margin:.42rem 0 0;font-size:.66rem;color:#64748b!important;line-height:1.35}.lf-center{display:flex;flex-direction:column;overflow:hidden}.lf-center-head{padding:.38rem .58rem;border-bottom:1px solid rgba(226,232,240,.9);display:flex;align-items:center;justify-content:space-between;gap:.5rem;background:#fff;flex-shrink:0}.lf-center-title{font-size:1rem;font-weight:800;color:#0f172a!important;margin:0;line-height:1.15}.lf-center-sub{font-size:.7rem;color:#475569!important;margin:.08rem 0 0;line-height:1.3}.lf-stats-row{display:flex;gap:.35rem;flex-shrink:0}.lf-stat{border:1px solid #e2e8f0;background:#f8fafc;border-radius:9999px;padding:.14rem .44rem;font-size:.62rem;color:#334155!important;font-weight:700;white-space:nowrap}.lf-canvas{flex:1;overflow:hidden;position:relative;cursor:grab;background:radial-gradient(circle at 64% 28%,rgba(251,191,36,.075),transparent 58%),radial-gradient(circle at 17% 82%,rgba(56,189,248,.055),transparent 52%),#f0ede8}.lf-canvas.is-drag{cursor:grabbing}.lf-svg-el{width:100%;height:100%;display:block}.lf-g{will-change:transform}.lf-ng{cursor:pointer}.lf-ng:hover>rect{filter:brightness(.94)}.lf-add-hint{cursor:pointer}.lf-add-hint:hover>rect{filter:brightness(.98)}.lf-flow,.lf-flow-sp{animation:lfFlow 2.8s linear infinite}.lf-pulse{animation:lfPulse 1.7s ease-in-out infinite}@keyframes lfFlow{0%{stroke-dashoffset:29}to{stroke-dashoffset:0}}@keyframes lfPulse{0%,to{opacity:.72}50%{opacity:1}}.lf-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.65rem;pointer-events:none}.lf-empty-icon{font-size:2.8rem;opacity:.35}.lf-empty-text{font-size:.85rem;color:#94a3b8!important}.lf-detail-body{margin-top:.45rem}.lf-det-head{display:flex;align-items:center;gap:.58rem;margin-top:.35rem}.lf-det-emoji{font-size:1.45rem;flex-shrink:0}.lf-det-name{font-size:1.1rem;font-weight:800;color:#0f172a!important;margin:0;line-height:1.2}.lf-det-era{font-size:.73rem;color:#64748b!important;margin:.15rem 0 0}.lf-divider{height:1px;background:#f1f5f9;margin:.65rem 0}.lf-det-sum{font-size:.82rem;color:#334155!important;line-height:1.55;margin:0}.lf-det-sec{margin-top:.82rem;padding-top:.72rem;border-top:1px solid #f1f5f9}.lf-det-lbl{font-size:.61rem;font-weight:800;text-transform:uppercase;letter-spacing:.2em;color:#9a3412!important;margin:0 0 .38rem}.lf-chips{display:flex;flex-wrap:wrap;gap:.35rem}.lf-chip{display:inline-flex;align-items:center;gap:.24rem;padding:.24rem .5rem;border-radius:9999px;font-size:.74rem;font-weight:700;cursor:pointer;border:1.5px solid;transition:transform .11s ease;line-height:1.2}.lf-chip:hover{transform:translateY(-1px)}.lf-chip-guru{color:#1e40af!important;background:#eff6ff!important;border-color:#3b82f673!important}.lf-chip-disc{color:#9d174d!important;background:#fdf2f8!important;border-color:#f472b673!important}.lf-chip-kid{color:#166534!important;background:#f0fdf4!important;border-color:#86efac99!important}.lf-chip-gotra{color:#065f46!important;background:#ecfdf5!important;border-color:#10b98173!important;cursor:default}.lf-chip-text{color:#334155!important;background:#f8fafc!important;border-color:#e2e8f0!important;cursor:default;font-size:.7rem!important}.lf-no-link{font-size:.76rem;color:#94a3b8!important;margin:0}.lf-hint{font-size:.81rem;color:#94a3b8!important;line-height:1.5;margin:.45rem 0 0}.lf-gotra-note{font-size:.63rem;color:#94a3b8!important;margin:.32rem 0 0}.lf-site-links{display:flex;flex-direction:column;gap:.3rem;margin-top:.05rem}.lf-site-link{display:flex;align-items:center;gap:.5rem;padding:.32rem .6rem;border-radius:.55rem;background:#f8fafc;border:1px solid #e2e8f0;font-size:.75rem;font-weight:600;color:#1e40af!important;text-decoration:none;transition:all .12s ease}.lf-site-link:hover{background:#eff6ff;border-color:#3b82f666;transform:translate(2px)}.lf-site-link-arr{margin-left:auto;font-size:.7rem;opacity:.55;flex-shrink:0}.lf-kf-item{font-size:.78rem;color:#334155!important;line-height:1.45;position:relative}.lf-kf-item:before{content:"•";position:absolute;left:-1rem;color:#b45309;font-size:1rem;line-height:1.2}.lf-legend{position:absolute;bottom:.75rem;right:.75rem;display:flex;flex-direction:column;gap:.32rem;background:#ffffffe6;border:1px solid rgba(203,213,225,.7);border-radius:.65rem;padding:.45rem .6rem;backdrop-filter:blur(6px);z-index:10;pointer-events:none}.lf-legend-item{display:flex;align-items:center;gap:.42rem;font-size:.68rem;font-weight:600;color:#334155!important;white-space:nowrap}.lf-legend-dot{width:10px;height:10px;border-radius:3px;flex-shrink:0}.lf-mt-canvas-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.65rem;height:100%;text-align:center;padding:2rem;pointer-events:none}.lf-mt-canvas-empty .icon{font-size:3rem;opacity:.3}.lf-mt-canvas-empty h3{font-size:.98rem;font-weight:700;color:#334155!important;margin:0}.lf-mt-canvas-empty p{font-size:.8rem;color:#94a3b8!important;margin:0}.lf-det-action{width:100%;padding:.42rem .65rem;border-radius:.58rem;border:1.5px solid #e2e8f0;background:#f8fafc;cursor:pointer;font-size:.78rem;font-weight:700;color:#334155!important;transition:all .13s ease;text-align:left}.lf-det-action:hover{background:#f1f5f9;border-color:#cbd5e1}.lf-det-action-primary{background:#0f172a;color:#fff!important;border-color:#0f172a}.lf-det-action-primary:hover{background:#1e293b;border-color:#1e293b}.lf-det-action-danger{color:#dc2626!important;border-color:#fca5a5!important;background:#fff5f5}.lf-det-action-danger:hover{background:#fef2f2!important;border-color:#f87171!important}.lf-overlay{position:fixed;inset:0;background:#0f172a8c;display:flex;align-items:center;justify-content:center;z-index:9999}.lf-overlay[hidden]{display:none!important}.lf-modal{background:#fff;border-radius:1rem;width:min(460px,calc(100vw - 2rem));box-shadow:0 24px 60px #0f172a40;overflow:hidden}.lf-modal-head{padding:.9rem 1rem;border-bottom:1px solid #f1f5f9;display:flex;align-items:center;justify-content:space-between}.lf-modal-head h3{font-size:.98rem;font-weight:800;color:#0f172a!important;margin:0}.lf-modal-close{width:28px;height:28px;border-radius:.38rem;border:1px solid #e2e8f0;background:#f8fafc;cursor:pointer;font-size:.85rem;display:flex;align-items:center;justify-content:center;color:#64748b!important}.lf-modal-body{padding:1rem}.lf-fg{margin-bottom:.78rem}.lf-fg label{display:block;font-size:.73rem;font-weight:700;color:#334155!important;margin-bottom:.3rem}.lf-fg input,.lf-fg select,#en,#et,#ee,#mn,#md,#pn,#pt,#pe{width:100%;padding:.42rem .62rem;border:1.5px solid #e2e8f0;border-radius:.58rem;font-size:.84rem;color:#0f172a!important;background:#fff;transition:border-color .12s ease;box-sizing:border-box}.lf-fg input:focus,.lf-fg select:focus,#en:focus,#et:focus,#ee:focus,#mn:focus,#md:focus,#pn:focus,#pt:focus,#pe:focus{outline:none;border-color:#94a3b8}.lf-fa{display:flex;gap:.45rem;justify-content:flex-end;margin-top:.9rem}.lf-btn-p{padding:.42rem 1rem;border-radius:.55rem;border:none;background:#0f172a;color:#fff!important;font-size:.82rem;font-weight:700;cursor:pointer}.lf-btn-s{padding:.42rem 1rem;border-radius:.55rem;border:1.5px solid #e2e8f0;background:#fff;color:#334155!important;font-size:.82rem;font-weight:600;cursor:pointer}@media(max-width:1160px){.lf-body{grid-template-columns:190px 1fr}}@media(max-width:760px){.lf-toolbar{height:auto;min-height:46px;padding:.35rem .6rem;flex-wrap:wrap}.lf-tb-brand{font-size:.84rem}.lf-tabs{display:flex!important;order:3;width:100%;overflow-x:auto;gap:.16rem;padding-top:.2rem}.lf-tabs::-webkit-scrollbar{display:none}.lf-body{display:block;position:relative}.lf-center{height:100%}.lf-side:not(.lf-right){position:fixed;left:0;top:calc(5rem + 46px);bottom:4.75rem;width:min(84vw,320px);transform:translate(-104%);transition:transform .18s ease;border-right:1px solid rgba(203,213,225,.75);border-bottom:none;max-height:none;box-shadow:8px 0 26px #0f172a29;z-index:260;display:block}.lf-app.is-left-open .lf-side:not(.lf-right){transform:translate(0)}.lf-app.is-canvas-focus .lf-side:not(.lf-right){display:block}.lf-side-list{display:flex;flex-direction:column;gap:.2rem}.lf-right{left:0;right:0;top:auto;bottom:4.75rem;width:100%;height:min(62vh,520px);border-left:none;border-top:1px solid rgba(203,213,225,.8);border-radius:14px 14px 0 0;transform:translateY(106%);box-shadow:0 -10px 30px #0f172a29;z-index:270}.lf-right.is-open{transform:translateY(0)}.lf-tab{padding:.35rem .6rem}}@media(prefers-reduced-motion:reduce){.lf-flow{animation:none}.lf-list-btn,.lf-tab,.lf-chip{transition:none}}
