.ln-stats,.ln-gstats{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(min(190px,100%),1fr));margin-bottom:22px}.ln-stats .s,.ln-gstats .s{display:flex;align-items:flex-start;gap:14px;padding:20px;min-width:0}.ln-sic{width:40px;height:40px}.ln-sic svg{width:20px;height:20px}.ln-sv{display:grid;gap:2px;min-width:0}.ln-sl{font-size:.8rem;font-weight:500;color:var(--ink-2)}.ln-sv b{display:block;font-size:1.75rem;font-weight:600;letter-spacing:-.025em;line-height:1.15;font-variant-numeric:tabular-nums;color:var(--ink)}.ln-sv b.hot{color:var(--teal)}.ln-sv b.warn{color:var(--warn)}.ln-sv .cap{font-size:.75rem;color:var(--ink-3)}@media (max-width: 640px){.ln-stats,.ln-gstats{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.ln-stats .s,.ln-gstats .s{flex-direction:column;gap:10px;padding:16px}.ln-sic{width:36px;height:36px;border-radius:11px}.ln-sv b{font-size:1.5rem}}.ln-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:22px;padding:6px;background:var(--mint-ultra);border:1px solid var(--line);border-radius:20px}.ln-tabs .pill{min-height:36px;padding:0 14px;background:transparent;border-color:transparent;white-space:nowrap;color:var(--ink-2);transition:background-color .18s,color .18s,box-shadow .18s}.ln-tabs .pill:hover{background:var(--card);color:var(--ink)}.ln-tabs .pill.on{background:var(--teal-soft);color:var(--teal-deep);box-shadow:inset 0 0 0 1px var(--line-2)}.ln-count{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;margin-left:2px;border-radius:var(--r-pill);background:var(--teal);color:var(--on-teal);font-size:.6875rem;font-weight:600;font-variant-numeric:tabular-nums}@media (max-width: 640px){.ln-tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;border-radius:var(--r)}.ln-tabs::-webkit-scrollbar{display:none}.ln-tabs .pill{flex:none;padding:0 12px;font-size:.8rem}}.ln-stage{animation:lnRise .2s var(--ease);min-width:0}@keyframes lnRise{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.ln-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:18px}.ln-actions .btn{min-height:42px;padding:0 18px;font-size:.84rem}.ln-actions .btn .ic,.ln-actions .btn svg,.ln-go svg{width:16px;height:16px;flex:none}.ln-search,.ln-q{flex:1;min-width:160px;min-height:42px;padding:0 14px;font-size:.875rem}#lrecBtn.rec{background:var(--bad);border-color:transparent;color:var(--on-teal)}.ln-sec{margin:24px 0 0}.ln-sec>.label{display:block;margin:0 0 10px 2px}.ln-fine{font-size:.8rem;color:var(--ink-3);line-height:1.6;margin-top:12px;max-width:70ch}.ln-fine b{font-weight:600;color:var(--ink-2)}.ln-meta{font-size:.78rem;color:var(--ink-3);font-weight:400}.ln-empty.all-clear{background:var(--card);border:1px solid var(--edge);border-radius:var(--r);box-shadow:var(--shadow);padding:32px 20px;margin-bottom:18px}.ln-empty.all-clear>span:last-child{max-width:48ch}.all-clear .ac-ic svg{width:22px;height:22px}.ln-list{display:grid;margin-top:4px;padding:4px 20px;background:var(--card);border:1px solid var(--edge);border-radius:var(--r);box-shadow:var(--shadow)}.ln-list>.ln-row.card{background:none;border:0;border-radius:0;box-shadow:none;transform:none;border-top:1px solid var(--line)}.ln-list>.ln-row.card:first-child{border-top:0}.ln-row{display:flex;align-items:center;gap:12px;padding:14px 0;min-width:0}.ln-list>.ln-row:hover{background:linear-gradient(90deg,transparent,var(--mint-ultra) 12%,var(--mint-ultra) 88%,transparent)}.ln-row.off{opacity:.55}.ln-row.off .ln-main b{text-decoration:line-through;text-decoration-color:var(--line-2)}.ln-row.late .ln-main b:after,.ln-row.soon .ln-main b:after{content:"";display:inline-block;width:7px;height:7px;margin-left:8px;border-radius:50%;vertical-align:middle;background:var(--teal-lit)}.ln-row.late .ln-main b:after{background:var(--bad-fill)}.ln-main{flex:1;min-width:0;display:grid;gap:2px}.ln-main b{display:block;font-size:.9375rem;font-weight:500;color:var(--ink);overflow-wrap:anywhere}.ln-meta.due{flex:none;font-variant-numeric:tabular-nums}.ln-in{font-size:.8rem;font-weight:600;flex:none;min-width:58px;text-align:right;font-variant-numeric:tabular-nums;color:var(--ink-2)}.ln-in.bad{color:var(--bad)}.ln-in.warn{color:var(--warn)}.ln-go{min-height:34px;padding:0 12px;font-size:.78rem;flex:none;gap:6px}@media (max-width: 640px){.ln-list{padding:2px 16px}.ln-row{flex-wrap:wrap;gap:8px 10px}.ln-row .ln-main{flex:1 1 55%}.ln-row>.chip{order:-1}}.ln-x{width:32px;height:32px;border-radius:10px;border:none;background:none;flex:none;padding:0;display:grid;place-items:center;color:var(--ink-3);cursor:pointer;transition:background-color .18s,color .18s}.ln-x svg{width:16px;height:16px}.ln-x:hover{color:var(--bad);background:var(--rose-soft)}.ln-x.ln-edit{width:auto;height:30px;padding:0 12px;margin-left:auto;font:inherit;font-size:.78rem;font-weight:600;color:var(--teal);border:1px solid var(--line)}.ln-x.ln-edit:hover{color:var(--teal-deep);background:var(--teal-soft);border-color:transparent}.ln-x.ln-edit+.ln-x{margin-left:0}.ln-panel{padding:22px 24px;margin-bottom:18px}.ln-grid{display:grid;gap:18px;grid-template-columns:repeat(auto-fill,minmax(min(280px,100%),1fr))}.ln-head{display:flex;align-items:center;gap:8px;margin-bottom:10px}.ln-head .ln-x{margin-left:auto}.ln-acts{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.ready{padding:32px 24px;text-align:center;display:grid;justify-items:center;gap:4px;margin-bottom:4px}.ready:not(.done){background:linear-gradient(150deg,var(--teal-soft) 0%,var(--card) 100%)}.ready-ic{width:46px;height:46px;background:var(--card);color:var(--teal);box-shadow:var(--shadow);margin-bottom:8px}.ready-ic svg{width:22px;height:22px}.ready-n{font-size:3rem;font-weight:600;letter-spacing:-.035em;line-height:1;margin:8px 0 4px;color:var(--teal-deep);font-variant-numeric:tabular-nums}.ready-tick{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:var(--teal-soft);color:var(--teal)}.ready-tick svg{width:26px;height:26px}.ready-sub{font-size:.875rem;color:var(--ink-2);max-width:44ch;margin:0 auto 16px;line-height:1.55}.ready .btn{min-height:46px;padding:0 28px}.rev-top{display:flex;align-items:center;gap:12px;margin-bottom:14px;font-variant-numeric:tabular-nums}.rev-bar{flex:1;height:6px;border-radius:99px;background:var(--teal-soft);overflow:hidden}.rev-bar span{display:block;height:100%;background:var(--teal);border-radius:99px;transition:width .25s var(--ease)}.cardface{padding:40px 24px;text-align:center;min-height:200px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}.cardface .q{font-size:1.375rem;font-weight:600;letter-spacing:-.015em;line-height:1.35;color:var(--ink);overflow-wrap:anywhere}.cardface .a{font-size:1.125rem;color:var(--teal-deep);font-weight:500;overflow-wrap:anywhere}.rule{width:48px;border:none;border-top:1px solid var(--line-2);margin:16px auto}.rev-acts{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;margin-top:16px}.rev-acts .btn{min-height:52px;font-size:.9rem}.btn.wrong{background:var(--card);color:var(--bad);border:1px solid var(--line-2);box-shadow:none}.btn.wrong:hover{background:var(--rose-soft);border-color:transparent}.btn.wide{width:100%;min-height:52px;margin-top:16px;font-size:.9rem}.boxes{display:flex;align-items:flex-end;gap:12px;height:120px;margin-top:16px;padding:14px 14px 10px;background:var(--mint-ultra);border-radius:var(--r-sm)}.bx{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;height:100%;justify-content:flex-end;min-width:0}.bx-bar{width:100%;flex:1;display:flex;align-items:flex-end}.bx-bar i{width:100%;background:var(--teal-lit);border-radius:6px 6px 0 0;min-height:3px;transition:background-color .18s}.bx:last-child .bx-bar i,.bx:hover .bx-bar i{background:var(--teal)}.bx-n{font-size:.84rem;font-weight:600;font-variant-numeric:tabular-nums}.bx-l{font-size:.6875rem;color:var(--ink-3);font-variant-numeric:tabular-nums}.bpill{width:26px;height:26px;border-radius:50%;flex:none;display:grid;place-items:center;background:var(--teal-soft);color:var(--teal-deep);font-size:.75rem;font-weight:600;font-variant-numeric:tabular-nums}.course{padding:20px 22px;min-width:0}.course h3{font-size:.9375rem;font-weight:600;overflow-wrap:anywhere}.course .bar{margin-top:14px}.minibar{display:block;height:6px;border-radius:99px;background:var(--teal-soft);overflow:hidden;margin-top:6px;max-width:200px}.minibar i{display:block;height:100%;background:var(--teal);border-radius:99px}.pct{margin-top:6px;font-variant-numeric:tabular-nums}.quotes,.hl-grid{display:grid;gap:18px;grid-template-columns:repeat(auto-fill,minmax(min(270px,100%),1fr))}.hl-grid{margin-top:4px}.qt,.hl{padding:22px 24px 20px;margin:0;position:relative;box-shadow:inset 3px 0 0 var(--teal-lit),var(--shadow)}.qt .ln-x,.hl .ln-x{position:absolute;top:8px;right:8px}.qt p,.hl p{font-size:.9375rem;line-height:1.65;font-style:italic;color:var(--ink);padding-right:18px;overflow-wrap:anywhere}.qt footer,.hl footer{font-size:.78rem;color:var(--ink-3);margin-top:12px;font-style:normal}.tick{width:26px;height:26px;border-radius:50%;flex:none;padding:0;border:1.6px solid var(--teal-lit);background:var(--card);color:transparent;display:grid;place-items:center;cursor:pointer;transition:background-color .18s,border-color .18s,color .18s,transform .15s}.tick svg{width:14px;height:14px}.tick:hover{border-color:var(--teal);background:var(--teal-soft)}.tick:active{transform:scale(.92)}.tick.on{background:var(--teal);border-color:transparent;color:var(--on-teal)}.tt{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(min(130px,100%),1fr))}.tt-day{background:var(--mint-ultra);border:1px solid var(--line);border-radius:var(--r-sm);padding:12px;min-height:84px;min-width:0}.tt-h{font-size:.6875rem;font-weight:600;color:var(--teal-deep);text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}.tt-c{position:relative;background:var(--card);border:1px solid var(--edge);border-radius:10px;padding:9px 30px 9px 11px;margin-bottom:6px;box-shadow:var(--shadow)}.tt-c b{display:block;font-size:.84rem;font-weight:600;overflow-wrap:anywhere}.tt-c span{font-size:.75rem;color:var(--ink-3);font-variant-numeric:tabular-nums}.tt-c .ln-x{position:absolute;top:4px;right:4px;width:24px;height:24px;border-radius:8px}.tt-c .ln-x svg{width:13px;height:13px}.tt-none{font-size:.8rem;color:var(--ink-3)}.ln-caps{margin-top:28px;padding:0}.ln-caps>summary{display:flex;align-items:center;gap:12px;padding:16px 22px;cursor:pointer;list-style:none}.ln-caps>summary::-webkit-details-marker{display:none}.ln-caps>summary .chip{margin-left:auto}.ln-chev{color:var(--ink-3);transition:transform .2s var(--ease)}.ln-caps[open] .ln-chev{transform:rotate(90deg)}.ln-caps .ap-list{margin:0;padding:0 22px 20px;list-style:none;display:grid}.ln-caps .ap-list li{display:flex;align-items:center;gap:10px;padding:8px 0;border-top:1px solid var(--line);font-size:.86rem;color:var(--ink-3)}.ln-caps .ap-list li.on{color:var(--ink)}.ln-caps .ap-mark{width:20px;height:20px;border-radius:50%;flex:none;display:grid;place-items:center;border:1.5px solid var(--line-2)}.ln-caps li.on .ap-mark{background:var(--teal-soft);color:var(--teal);border-color:transparent}.ln-caps .ap-mark svg{width:12px;height:12px}.ln-ency{display:grid;gap:18px}.ln-entry{padding:20px 24px;min-width:0;transition:box-shadow .2s var(--ease),outline-color .2s}.ln-entry.flash{outline:2px solid var(--teal);outline-offset:3px}.ln-ehead{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}.ln-ehead b{font-size:.9375rem;font-weight:600;overflow-wrap:anywhere}.ln-ebody{font-size:.9rem;line-height:1.7;color:var(--ink-2);overflow-wrap:anywhere}.ln-link{border:none;background:var(--teal-soft);color:var(--teal-deep);border-radius:8px;padding:1px 8px;font:inherit;font-size:.84rem;font-weight:500;cursor:pointer;transition:background-color .18s}.ln-link:hover{background:var(--mint-soft);color:var(--teal)}.ln-link.missing{background:var(--cream);color:var(--ink-3);box-shadow:inset 0 0 0 1px var(--line)}.ln-link.missing:hover{color:var(--ink-2)}.ln-link i{font-style:normal;font-size:.6875rem;opacity:.8;margin-left:6px}.ln-back{margin-top:12px;padding-top:12px;border-top:1px solid var(--line);font-size:.78rem;color:var(--ink-3);display:flex;gap:6px;flex-wrap:wrap;align-items:center}.ln-hubs{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr))}.ln-hub{background:var(--card);border:1px solid var(--edge);border-radius:var(--r);box-shadow:var(--shadow);padding:16px 18px;display:grid;gap:2px;min-width:0}.ln-hub b{font-size:.9375rem;font-weight:600;overflow-wrap:anywhere}.ln-edges{display:grid;gap:4px;margin-top:10px;padding:10px 12px;font-size:.8rem;color:var(--ink-2);background:var(--mint-ultra);border-radius:10px}.ln-edges:not(:has(span)){display:none}.ln-edges .in{color:var(--ink-3)}.ln-want{display:flex;gap:8px;flex-wrap:wrap}.ln-lone{font-size:.8rem;padding:4px 11px;border-radius:var(--r-pill);background:var(--card);border:1px solid var(--line);color:var(--ink-2)}.ln-big{font-weight:600;font-size:2.6rem;letter-spacing:-.03em;line-height:1.1;margin:8px 0 18px;font-variant-numeric:tabular-nums}.ln-big em{font-style:normal;font-size:.84rem;font-weight:500;color:var(--ink-3);margin-left:8px;letter-spacing:0}.ln-big.good{color:var(--ok)}.ln-big.mid{color:var(--gold-ink)}.ln-big.low{color:var(--bad)}.ln-kbars{display:grid;gap:14px;padding-top:16px;border-top:1px solid var(--line)}.ln-krow{display:grid;grid-template-columns:100px minmax(0,1fr) 48px;gap:4px 12px;align-items:center;font-size:.84rem}.ln-klab{font-weight:500;color:var(--ink)}.ln-kbar{height:8px;border-radius:99px;background:var(--teal-soft);overflow:hidden}.ln-kbar i{display:block;height:100%;background:var(--teal);border-radius:99px;transition:width .5s var(--ease)}.ln-kval{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.ln-krow .ln-meta{grid-column:1 / -1}.ln-lect{display:grid}.ln-lect{background:var(--card);border:1px solid var(--edge);border-radius:var(--r);box-shadow:var(--shadow);padding:4px 20px}.ln-lect>.ln-lrow.card{background:none;border:0;border-radius:0;box-shadow:none;border-top:1px solid var(--line)}.ln-lect>.ln-lrow.card:first-child{border-top:0}.ln-lrow{display:flex;align-items:center;gap:12px;padding:14px 0;flex-wrap:wrap;min-width:0}.ln-lrow>div{min-width:0;overflow-wrap:anywhere}.ln-lrow b{font-weight:600}.ln-lrow audio{height:36px;max-width:260px;width:100%;margin-left:auto}@media (max-width: 560px){.ln-lrow audio{max-width:none;flex:1 1 200px;margin-left:0}}.ln-scans{display:grid;gap:18px}.ln-scan{display:grid;grid-template-columns:124px minmax(0,1fr);gap:16px;padding:20px;align-items:start}.ln-scan img{width:100%;border-radius:10px;display:block;cursor:zoom-in;border:1px solid var(--line);background:var(--card);transition:box-shadow .2s var(--ease)}.ln-scan img:hover{box-shadow:var(--shadow-2)}.ln-scan img.big{grid-column:1 / -1;width:100%;cursor:zoom-out}.ln-smain{min-width:0;display:grid;gap:2px}.ln-smain b{display:block;font-size:.9375rem;font-weight:600;overflow-wrap:anywhere}.ln-swords{margin:8px 0 0;font-size:.875rem;color:var(--ink);overflow-wrap:anywhere}.ln-swords.none{color:var(--ink-3);font-size:.8rem}.ln-socr{margin-top:10px}.ln-socr summary{cursor:pointer;font-size:.8rem;font-weight:500;color:var(--teal)}.ln-socr pre{white-space:pre-wrap;font-size:.78rem;color:var(--ink-2);margin:8px 0 0;padding:12px;background:var(--mint-ultra);border:1px solid var(--line);border-radius:10px;overflow-wrap:anywhere}.ln-sacts{grid-column:1 / -1;display:flex;gap:8px;flex-wrap:wrap;align-items:center;padding-top:14px;border-top:1px solid var(--line)}.ln-sacts .ln-x{margin-left:auto}.ln-mini{min-height:34px;padding:0 12px;font-size:.78rem}@media (max-width: 520px){.ln-scan{grid-template-columns:88px minmax(0,1fr);padding:16px;gap:12px}}#sheet .sh-top{display:flex;align-items:center;gap:12px;margin-bottom:16px}#sheet .sh-top h3{font-size:1.1rem;font-weight:600}#sheet .sh-top .round{margin-left:auto}#sheet .sh-top .round svg{width:18px;height:18px}#sheet label.f{display:grid;gap:6px;margin-bottom:14px;font-size:.8rem;font-weight:500;color:var(--ink-2)}#sheet label.f em{font-style:normal;font-weight:400;color:var(--ink-3)}#sheet label.f input,#sheet label.f select{min-height:44px;padding:0 12px;font-size:.92rem;width:100%}#sheet label.f textarea{padding:10px 12px;font-size:.92rem;width:100%;line-height:1.55;resize:vertical}#sheet .sh-acts{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:8px}#sheet .sh-acts .btn{min-width:120px}
