:root{--tg-bg: #ffffff;--tg-text: #000000;--tg-hint: #707579;--tg-link: #3390ec;--tg-button: #3390ec;--tg-button-text: #ffffff;--tg-secondary-bg: #f4f4f5;--tg-section-bg: #ffffff;--tg-destructive: #df3f40;--ok: #1b7a4f;--warn: #98700a;--danger: #ae352c;--radius: 12px;--gap: 12px;--pad: 16px}:root[data-theme=dark]{--ok: #57be8b;--warn: #d8b04a;--danger: #e1786d}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}body{margin:0;background:var(--tg-bg);color:var(--tg-text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;font-size:16px;line-height:1.5;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.screen{display:flex;flex-direction:column;gap:var(--gap);padding:var(--pad);min-height:100vh}.card{background:var(--tg-section-bg);border-radius:var(--radius);padding:var(--pad);display:flex;flex-direction:column;gap:8px}:root[data-theme=dark] .card{background:var(--tg-secondary-bg)}.card--muted{background:var(--tg-secondary-bg)}h1{font-size:20px;font-weight:600;margin:0}h2{font-size:16px;font-weight:600;margin:0}.hint{color:var(--tg-hint);font-size:14px;margin:0}.row{display:flex;align-items:center;justify-content:space-between;gap:var(--gap)}.btn{appearance:none;border:none;border-radius:var(--radius);background:var(--tg-button);color:var(--tg-button-text);font-size:16px;font-weight:600;padding:14px 20px;width:100%;cursor:pointer}.btn:disabled{opacity:.5}.btn--secondary{background:var(--tg-secondary-bg);color:var(--tg-text)}.badge{display:inline-flex;align-items:center;gap:6px;border-radius:100px;padding:4px 10px;font-size:13px;font-weight:600;background:var(--tg-secondary-bg)}.badge--ok{color:var(--ok)}.badge--warn{color:var(--warn)}.badge--danger{color:var(--danger)}.spinner{width:28px;height:28px;border:3px solid var(--tg-secondary-bg);border-top-color:var(--tg-button);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spinner{animation-duration:2s}}.center{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--gap);text-align:center}.pre-line{white-space:pre-line}.tone--good{border-left:4px solid #1f8b4c}.tone--warn{border-left:4px solid #b8860b}.tone--bad{border-left:4px solid #b3261e}.tone--muted{border-left:4px solid var(--tg-hint, #999)}.hint--ok{color:#34c759}.lk{padding-bottom:calc(var(--pad) + 8px)}.lk-rose{color:var(--danger)}.lk-hero{display:flex;flex-direction:column;gap:4px;padding:20px;border-radius:20px;background:radial-gradient(circle at 100% 0%,rgba(255,255,255,.22),transparent 55%),linear-gradient(135deg,var(--tg-button),color-mix(in srgb,var(--tg-button) 55%,#0b1b3a));color:var(--tg-button-text);box-shadow:0 10px 28px color-mix(in srgb,var(--tg-button) 35%,transparent)}.lk-hero__label{font-size:14px;font-weight:600;opacity:.85}.lk-hero__value{font-size:40px;font-weight:800;line-height:1.05;letter-spacing:-.03em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.lk-hero__value small{margin-left:8px;font-size:17px;font-weight:600;opacity:.8}.lk-hero__hint{font-size:14px;opacity:.85}.lk-hero__bar{height:6px;margin:12px 0 4px;overflow:hidden;border-radius:100px;background:#ffffff4d}.lk-hero__bar i{display:block;height:100%;border-radius:100px;background:#fff;transition:width .3s ease}.lk-hero__stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:8px}.lk-hero__stats div{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-radius:12px;background:#ffffff24}.lk-hero__stats span{font-size:11.5px;opacity:.8}.lk-hero__stats b{font-size:15px;white-space:nowrap;font-variant-numeric:tabular-nums}.lk-hero .lk-rose{color:#ffe4e6}.lk-hero--empty{background:var(--tg-secondary-bg);color:var(--tg-text);box-shadow:none}.lk-hero__problem{margin:0;font-size:14px;color:var(--warn)}.lk-form{gap:18px}.lk-field{display:flex;flex-direction:column;gap:8px}.lk-field__head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;font-size:14px;color:var(--tg-hint)}.lk-field__head b{font-size:17px;color:var(--tg-text);font-variant-numeric:tabular-nums}.lk-field__head--stack{flex-direction:column;align-items:flex-start;gap:0}.lk-field__head--stack span{color:var(--tg-text);font-weight:600}.lk-field__head--stack small{font-size:12px}.lk-field--row{flex-direction:row;align-items:center;justify-content:space-between}.lk-input{display:flex;align-items:center;gap:6px;padding:0 14px;border:1px solid color-mix(in srgb,var(--tg-hint) 30%,transparent);border-radius:14px;background:var(--tg-bg)}.lk-input:focus-within{border-color:var(--tg-button)}.lk-input input{flex:1;min-width:0;height:48px;border:0;background:transparent;color:var(--tg-text);font:inherit;font-size:20px;font-weight:700;font-variant-numeric:tabular-nums;outline:none}.lk-input span{font-size:14px;color:var(--tg-hint)}.lk-input--mini{flex:1 0 84px;padding:0 10px;border-radius:100px}.lk-input--mini input{height:34px;font-size:15px}.lk-range{--fill: 0%;width:100%;height:8px;margin:6px 0;border-radius:100px;background:linear-gradient(to right,var(--tg-button) var(--fill),color-mix(in srgb,var(--tg-hint) 25%,transparent) var(--fill));appearance:none;touch-action:pan-y}.lk-range::-webkit-slider-thumb{width:28px;height:28px;border:4px solid #fff;border-radius:50%;background:var(--tg-button);box-shadow:0 2px 6px #00000040;appearance:none}.lk-range::-moz-range-thumb{width:22px;height:22px;border:4px solid #fff;border-radius:50%;background:var(--tg-button);box-shadow:0 2px 6px #00000040}.lk-chips{display:flex;flex-wrap:wrap;gap:6px}.lk-chips>button{flex:1 0 auto;min-height:36px;padding:0 12px;border:1px solid color-mix(in srgb,var(--tg-hint) 30%,transparent);border-radius:100px;background:var(--tg-bg);color:var(--tg-text);font:inherit;font-size:14px;font-weight:600}.lk-chips>button.on{border-color:var(--tg-button);background:color-mix(in srgb,var(--tg-button) 14%,var(--tg-bg));color:var(--tg-button)}.lk-stepper{display:flex;align-items:center;gap:4px;padding:4px;border-radius:100px;background:var(--tg-secondary-bg)}.lk-stepper button{width:40px;height:40px;border:0;border-radius:50%;background:var(--tg-bg);color:var(--tg-button);font-size:22px;font-weight:600;box-shadow:0 1px 2px #0000001a}.lk-stepper b{min-width:60px;text-align:center;font-variant-numeric:tabular-nums}.lk-tiles{display:grid;grid-template-columns:1fr 1fr;gap:8px}.lk-tile{display:flex;flex-direction:column;align-items:flex-start;gap:1px;padding:12px;border:2px solid color-mix(in srgb,var(--tg-hint) 25%,transparent);border-radius:16px;background:var(--tg-bg);color:var(--tg-text);font:inherit;text-align:left}.lk-tile.on{border-color:var(--tg-button);background:color-mix(in srgb,var(--tg-button) 8%,var(--tg-bg))}.lk-tile span{font-size:13px;font-weight:600;color:var(--tg-hint)}.lk-tile b{font-size:20px;font-weight:800;white-space:nowrap;font-variant-numeric:tabular-nums}.lk-tile small{font-size:12px;color:var(--tg-hint)}.lk-tile small.lk-rose{color:var(--danger)}.lk-note{margin:0;padding:8px 12px;border-radius:12px;font-size:13px}.lk-note--good{background:color-mix(in srgb,var(--ok) 14%,transparent);color:var(--ok)}.lk-toggle{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border-radius:14px;background:var(--tg-secondary-bg)}.lk-toggle button{min-height:38px;border:0;border-radius:10px;background:transparent;color:var(--tg-hint);font:inherit;font-size:14px;font-weight:600}.lk-toggle button.on{background:var(--tg-bg);color:var(--tg-text);box-shadow:0 1px 3px #0000001f}.lk-table-wrap{max-height:60vh;overflow:auto}.lk-table{width:100%;border-collapse:collapse;font-size:13px;font-variant-numeric:tabular-nums;text-align:right}.lk-table th{position:sticky;top:0;padding:8px 4px;background:var(--tg-section-bg);font-size:11px;font-weight:600;color:var(--tg-hint);text-transform:uppercase}.lk-table td{padding:8px 4px;border-top:1px solid var(--tg-secondary-bg)}.lk-table th:first-child,.lk-table td:first-child{text-align:left}.lk-grace td{background:color-mix(in srgb,var(--warn) 12%,transparent)}.lk-disclaimer{padding:0 4px;font-size:12px}.lk-actions{display:flex;flex-direction:column;gap:8px}.hint.queue{color:var(--tg-link, #2481cc);font-weight:600}
