:root{--primary: #3056d3;--primary-dark: #2443a8;--primary-soft: #eef2fd;--border: #e6e2d8;--surface: #ffffff;--surface-muted: #faf8f3;--shadow-soft: 0 1px 2px rgba(20,27,45,.05),0 8px 24px -12px rgba(20,27,45,.12);--text-main: #1b2130;--text-muted: #5d6475;--ink: #141b2d;--ink-2: #1f2a44;--seg-p: #6f8cf0;--seg-i: #e0782f;--seg-f: #d4507a;--good: #2f9e6b;--radius: 16px;--radius-sm: 10px;}
.ln-shell{background: var(--surface);border: 1px solid var(--border);border-radius: var(--radius);box-shadow: var(--shadow-soft);padding: 1.25rem 1.5rem 1.5rem;margin: 1.5rem 0 2.5rem;color: var(--text-main);}
.ln-shell [hidden]{display: none !important;}
.ln-byline{display: flex;flex-wrap: wrap;justify-content: space-between;gap: .4rem 1rem;font-size: .85rem;color: var(--text-muted);padding-bottom: .9rem;margin-bottom: 1.25rem;border-bottom: 1px solid var(--border);}
.ln-byline-updated{font-weight: 600;white-space: nowrap;}
.ln-byline .author-link{color: var(--primary);font-weight: 600;text-decoration: none;}
.ln-byline .author-link:hover,.ln-byline .author-link:focus-visible{text-decoration: underline;}
.ln-grid{display: grid;grid-template-columns: minmax(0,1.15fr) minmax(0,1fr);gap: 1.5rem;align-items: stretch;}
.ln-h{font-size: 1.05rem;font-weight: 700;letter-spacing: -.01em;margin: 0;color: var(--text-main);}
.ln-inputs{background: var(--surface-muted);border: 1px solid var(--border);border-radius: var(--radius);padding: 1.25rem 1.25rem 1rem;}
.ln-inputs-head{display: flex;justify-content: space-between;align-items: center;margin-bottom: 1rem;}
.ln-currency select{border: 1px solid var(--border);background: var(--surface);border-radius: 999px;padding: .3rem .8rem;font-size: .85rem;font-weight: 600;color: var(--text-main);cursor: pointer;}
.ln-field{margin-bottom: 1.15rem;}
.ln-field label{display: block;font-size: .88rem;font-weight: 600;color: var(--text-main);margin-bottom: .35rem;}
.ln-field-row{display: flex;justify-content: space-between;align-items: center;gap: 1rem;}
.ln-field-row label{margin: 0;}
.ln-num{width: 8.5rem;text-align: right;font-size: 1.05rem;font-weight: 700;font-variant-numeric: tabular-nums;color: var(--text-main);background: var(--surface);border: 1px solid var(--border);border-radius: var(--radius-sm);padding: .45rem .7rem;transition: border-color .15s,box-shadow .15s;}
.ln-num-wide{width: 100%;text-align: left;}
.ln-num:focus,.ln-select:focus,.ln-currency select:focus{outline: none;border-color: var(--primary);box-shadow: 0 0 0 3px rgba(48,86,211,.18);}
.ln-select{width: 100%;font-size: .95rem;color: var(--text-main);background: var(--surface);border: 1px solid var(--border);border-radius: var(--radius-sm);padding: .5rem .7rem;}
.ln-range{-webkit-appearance: none;appearance: none;width: 100%;height: 6px;margin-top: .7rem;border-radius: 999px;background: linear-gradient(90deg,var(--primary) var(--fill,50%),#dcd7cb var(--fill,50%));cursor: pointer;}
.ln-range::-webkit-slider-thumb{-webkit-appearance: none;width: 20px;height: 20px;border-radius: 50%;background: var(--surface);border: 3px solid var(--primary);box-shadow: 0 2px 6px rgba(20,27,45,.2);}
.ln-range::-moz-range-thumb{width: 16px;height: 16px;border-radius: 50%;background: var(--surface);border: 3px solid var(--primary);}
.ln-range:focus-visible{outline: 2px solid var(--primary);outline-offset: 4px;}
.ln-chips{display: flex;flex-wrap: wrap;gap: .4rem;margin-top: .6rem;}
.ln-chip{border: 1px solid var(--border);background: var(--surface);color: var(--text-muted);font-size: .82rem;font-weight: 600;padding: .32rem .75rem;border-radius: 999px;cursor: pointer;transition: all .15s;}
.ln-chip:hover{border-color: var(--primary);color: var(--primary);}
.ln-chip.is-on{background: var(--ink);border-color: var(--ink);color: #fff;}
.ln-more{border-top: 1px dashed var(--border);padding-top: .85rem;margin-top: .25rem;}
.ln-more summary{font-size: .88rem;font-weight: 700;color: var(--primary);cursor: pointer;list-style: none;}
.ln-more summary::-webkit-details-marker{display: none;}
.ln-more summary::before{content: "+";display: inline-block;width: 1.1rem;font-weight: 800;}
.ln-more[open] summary::before{content: "−";}
.ln-more-body{padding-top: .9rem;}
.ln-field-split{display: grid;grid-template-columns: 1fr 1fr;gap: .75rem;}
.ln-actions{display: flex;flex-wrap: wrap;gap: .5rem;margin-top: .5rem;}
.ln-btn{border-radius: var(--radius-sm);font-weight: 600;font-size: .88rem;padding: .5rem .95rem;cursor: pointer;transition: all .15s;}
.ln-btn-ghost{background: var(--surface);border: 1px solid var(--border);color: var(--text-main);}
.ln-btn-ghost:hover{border-color: var(--primary);color: var(--primary);}
.ln-btn-sm{padding: .38rem .8rem;font-size: .82rem;}
.ln-ticket{position: relative;display: flex;flex-direction: column;background: radial-gradient(120% 90% at 100% 0%,#2b3a63 0%,var(--ink-2) 45%,var(--ink) 100%);color: #eef1f8;border-radius: var(--radius);padding: 1.5rem 1.5rem 1.25rem;overflow: hidden;}
.ln-ticket-top{display: flex;flex-direction: column;gap: .2rem;}
.ln-ticket-label{font-size: .75rem;text-transform: uppercase;letter-spacing: .14em;color: #a9b3cc;font-weight: 700;}
.ln-ticket-big{font-size: clamp(2.3rem,5vw,3.2rem);font-weight: 800;letter-spacing: -.03em;line-height: 1.05;font-variant-numeric: tabular-nums;color: #fff;}
.ln-ticket-sub{font-size: .9rem;color: #c4cbe0;}
.ln-perf{position: relative;height: 0;border-top: 2px dashed rgba(255,255,255,.18);margin: 1.25rem -1.5rem;}
.ln-perf::before,.ln-perf::after{content: "";position: absolute;top: -12px;width: 22px;height: 22px;border-radius: 50%;background: var(--surface);}
.ln-perf::before{left: -11px;}
.ln-perf::after{right: -11px;}
.ln-stats{display: grid;grid-template-columns: 1fr 1fr;gap: .9rem 1.25rem;margin: 0 0 1.25rem;}
.ln-stats dt{font-size: .75rem;font-weight: 600;color: #a9b3cc;margin-bottom: .1rem;}
.ln-stats dd{font-size: 1.15rem;font-weight: 700;margin: 0;font-variant-numeric: tabular-nums;color: #fff;}
.ln-split-bar{display: flex;height: 12px;border-radius: 999px;overflow: hidden;background: rgba(255,255,255,.1);}
.ln-seg{display: block;height: 100%;transition: width .35s ease;}
.ln-seg-p,.ln-dot-p{background: var(--seg-p);}
.ln-seg-i,.ln-dot-i{background: var(--seg-i);}
.ln-seg-f,.ln-dot-f{background: var(--seg-f);}
.ln-legend{display: flex;flex-wrap: wrap;gap: .35rem 1rem;list-style: none;padding: 0;margin: .6rem 0 0;font-size: .8rem;color: #c4cbe0;}
.ln-legend b{color: #fff;font-weight: 700;margin-left: .15rem;}
.ln-dot{display: inline-block;width: 9px;height: 9px;border-radius: 3px;margin-right: .35rem;vertical-align: 0;}
.ln-note{margin: 1rem 0 0;padding: .65rem .8rem;border-radius: var(--radius-sm);background: rgba(111,140,240,.14);border-left: 3px solid var(--seg-p);font-size: .86rem;color: #e3e8f6;}
.ln-note.is-warn{background: rgba(224,120,47,.16);border-left-color: var(--seg-i);}
.ln-copy{margin-top: 1.1rem;align-self: flex-start;background: transparent;border: 1px solid rgba(255,255,255,.28);color: #fff;font-size: .82rem;font-weight: 600;border-radius: 999px;padding: .4rem .95rem;cursor: pointer;transition: background .15s;}
.ln-copy:hover,.ln-copy:focus-visible{background: rgba(255,255,255,.12);}
.ln-lower{display: grid;grid-template-columns: minmax(0,1fr) minmax(0,1.3fr);gap: 1.5rem;margin-top: 1.5rem;}
.ln-panel{border: 1px solid var(--border);border-radius: var(--radius);padding: 1.1rem 1.25rem;background: var(--surface);}
.ln-panel-head{display: flex;flex-wrap: wrap;justify-content: space-between;align-items: center;gap: .6rem;margin-bottom: .85rem;}
.ln-panel-intro{font-size: .86rem;color: var(--text-muted);margin: .3rem 0 .85rem;}
.ln-legend-inline{margin: 0;color: var(--text-muted);}
.ln-ladder{display: flex;flex-direction: column;gap: .35rem;}
.ln-rung{display: grid;grid-template-columns: 4.2rem 1fr auto;align-items: center;gap: .75rem;padding: .5rem .7rem;border-radius: var(--radius-sm);background: var(--surface-muted);font-variant-numeric: tabular-nums;font-size: .9rem;}
.ln-rung.is-now{background: var(--primary-soft);outline: 1.5px solid var(--primary);}
.ln-rung-rate{font-weight: 700;}
.ln-rung-pay{font-weight: 600;}
.ln-rung-pay small{display: block;font-size: .75rem;color: var(--text-muted);font-weight: 500;}
.ln-rung-diff{font-size: .8rem;font-weight: 700;color: var(--text-muted);text-align: right;}
.ln-rung-diff.is-up{color: #b4531c;}
.ln-rung-diff.is-down{color: var(--good);}
.ln-chart{width: 100%;min-height: 220px;}
.ln-chart svg{display: block;width: 100%;height: auto;}
.ln-chart text{font-size: 11px;fill: var(--text-muted);font-family: inherit;}
.ln-chart rect{transition: opacity .15s;}
.ln-chart g:hover rect{opacity: .8;}
.ln-schedule{margin-top: 1.5rem;}
.ln-sched-tools{display: flex;flex-wrap: wrap;align-items: center;gap: .5rem;}
.ln-toggle{display: inline-flex;padding: .2rem;background: var(--surface-muted);border: 1px solid var(--border);border-radius: 999px;}
.ln-toggle-btn{border: 0;background: transparent;font-size: .82rem;font-weight: 600;color: var(--text-muted);padding: .3rem .85rem;border-radius: 999px;cursor: pointer;}
.ln-toggle-btn.is-on{background: var(--ink);color: #fff;}
.ln-table-wrap{overflow-x: auto;max-height: 420px;overflow-y: auto;border-radius: var(--radius-sm);border: 1px solid var(--border);}
.ln-table{width: 100%;border-collapse: collapse;font-size: .88rem;font-variant-numeric: tabular-nums;}
.ln-table th{position: sticky;top: 0;background: var(--surface-muted);text-align: right;font-size: .75rem;text-transform: uppercase;letter-spacing: .06em;color: var(--text-muted);padding: .6rem .8rem;border-bottom: 1px solid var(--border);white-space: nowrap;}
.ln-table td{text-align: right;padding: .5rem .8rem;border-bottom: 1px solid #f0ede6;white-space: nowrap;}
.ln-table th:first-child,.ln-table td:first-child{text-align: left;}
.ln-table tbody tr:hover{background: var(--primary-soft);}
.ln-table td.ln-td-i{color: #b4531c;}
.ln-guide{margin: 0 auto 2.5rem;color: var(--text-main);font-size: 1.02rem;line-height: 1.7;}
.ln-guide-block{margin-bottom: 2.75rem;}
.ln-guide h2{font-size: 1.45rem;font-weight: 800;letter-spacing: -.02em;margin: 0 0 .8rem;}
.ln-guide p{margin: 0 0 1rem;}
.ln-guide a{color: var(--primary);font-weight: 600;}
.ln-formula{background: var(--ink);color: #e8ecf7;border-radius: var(--radius);padding: 1.1rem 1.3rem;font-size: .95rem;line-height: 1.75;overflow-x: auto;margin: 0 0 1.1rem;}
.ln-formula code{color: inherit;font-size: inherit;}
.ln-steps{list-style: none;counter-reset: st;padding: 0;margin: 0;display: grid;grid-template-columns: repeat(2,minmax(0,1fr));gap: .6rem;}
.ln-steps li{counter-increment: st;position: relative;background: var(--surface-muted);border: 1px solid var(--border);border-radius: var(--radius-sm);padding: .7rem .9rem .7rem 2.8rem;display: flex;flex-direction: column;}
.ln-steps li::before{content: counter(st);position: absolute;left: .8rem;top: .75rem;width: 1.45rem;height: 1.45rem;border-radius: 50%;background: var(--primary);color: #fff;font-size: .78rem;font-weight: 700;display: flex;align-items: center;justify-content: center;}
.ln-steps span{font-size: .78rem;font-weight: 700;text-transform: uppercase;letter-spacing: .06em;color: var(--text-muted);}
.ln-steps code{color: var(--text-main);font-size: .92rem;background: none;padding: 0;}
.ln-guide-split{display: grid;grid-template-columns: minmax(0,1fr) minmax(0,1fr);gap: 1.75rem;align-items: start;}
.ln-anatomy{margin: 0;background: var(--surface-muted);border: 1px solid var(--border);border-radius: var(--radius);padding: 1rem;}
.ln-anatomy figcaption{font-size: .8rem;font-weight: 700;text-transform: uppercase;letter-spacing: .08em;color: var(--text-muted);margin-bottom: .6rem;}
.ln-mini{width: 100%;border-collapse: collapse;font-size: .88rem;font-variant-numeric: tabular-nums;}
.ln-mini th{text-align: right;font-size: .74rem;color: var(--text-muted);font-weight: 700;padding: .4rem .5rem;border-bottom: 1.5px solid var(--border);}
.ln-mini td{text-align: right;padding: .45rem .5rem;border-bottom: 1px solid #efebe2;}
.ln-mini th:first-child,.ln-mini td:first-child{text-align: left;}
.ln-mini td:nth-child(2){color: #b4531c;font-weight: 600;}
.ln-mini-wide{background: var(--surface);}
.ln-mini-wide td:nth-child(2){color: var(--text-main);}
.ln-mini-wide td:nth-child(3){color: #b4531c;font-weight: 600;}
.ln-mini tr.is-mark td{background: var(--primary-soft);font-weight: 700;}
.ln-guide-block .ln-table-wrap{max-height: none;margin-bottom: 1rem;}
.ln-callout{background: linear-gradient(135deg,#fff6ee 0%,#fdf1f4 100%);border: 1px solid #f2dccb;border-radius: var(--radius);padding: 1.4rem 1.5rem .6rem;}
.ln-checks{list-style: none;padding: 0;margin: 0;display: flex;flex-direction: column;gap: .6rem;}
.ln-checks li{position: relative;padding: .75rem .9rem .75rem 2.6rem;border: 1px solid var(--border);border-radius: var(--radius-sm);background: var(--surface);}
.ln-checks li::before{content: "";position: absolute;left: .95rem;top: 1.05rem;width: .9rem;height: .9rem;border: 2px solid var(--primary);border-radius: 4px;}
.ln-limits{border-left: 4px solid var(--ink);padding-left: 1.4rem;}
.ln-limits ul{padding-left: 1.1rem;margin: 0 0 1rem;}
.ln-limits li{margin-bottom: .5rem;}
.ln-limits-foot{font-size: .92rem;color: var(--text-muted);}
.ln-offer{list-style: none;counter-reset: of;padding: 0;margin: 0;display: grid;grid-template-columns: repeat(auto-fit,minmax(150px,1fr));gap: .7rem;}
.ln-offer li{counter-increment: of;background: var(--ink);color: #dfe4f2;border-radius: var(--radius-sm);padding: .9rem 1rem;display: flex;flex-direction: column;gap: .3rem;font-size: .88rem;line-height: 1.5;}
.ln-offer li::before{content: "0" counter(of);font-size: .72rem;font-weight: 700;color: var(--seg-i);letter-spacing: .08em;}
.ln-offer b{color: #fff;font-size: 1rem;}
.ln-toast{position: fixed;left: 50%;bottom: 1.5rem;transform: translate(-50%,20px);background: var(--ink);color: #fff;font-size: .88rem;font-weight: 600;padding: .6rem 1.1rem;border-radius: 999px;box-shadow: 0 10px 30px rgba(20,27,45,.3);opacity: 0;pointer-events: none;transition: all .2s;z-index: 1080;}
.ln-toast.is-show{opacity: 1;transform: translate(-50%,0);}
@media (max-width: 991px){.ln-grid,.ln-lower{grid-template-columns: 1fr;}.ln-guide-split{grid-template-columns: 1fr;}}
@media (max-width: 575px){.ln-shell{padding: 1rem;}.ln-inputs,.ln-ticket{padding: 1rem;}.ln-perf{margin: 1.1rem -1rem;}.ln-num{width: 7rem;}.ln-field-split,.ln-steps{grid-template-columns: 1fr;}.ln-stats dd{font-size: 1rem;}.ln-rung{grid-template-columns: 3.6rem 1fr auto;gap: .5rem;}.ln-guide h2{font-size: 1.25rem;}}
@media (prefers-reduced-motion: reduce){.ln-seg,.ln-toast,.ln-chip,.ln-num{transition: none;}}