/* 「一條線」版：雜誌編輯風。白紙、黑字、一個鈷藍；粗襯線標題、細線分隔、No.01 編號。
   整個畫面固定一屏，不捲動頁面；內容多的放進從下方浮出的面板。 */
html.line,html.line:not([data-theme="light"]){
  --bg:#FBFAF6; --paper:#FFFFFF; --ink:#151515; --muted:#5C5A55; --line:#D8D5CC;
  --acc:#2338D9; --acc-soft:#E8EBFD; --acc-ink:#FFFFFF;
  --seal:#2338D9; --seal-ink:#FFFFFF; --act:#151515; --act-ink:#FFFFFF; --sel:#E8EBFD; --sel-line:#2338D9;
  --ok:#1D6A46; --ok-soft:#DDEEE4; --warn:#855800; --warn-soft:#F5EAD0;
  --no:#A2352A; --no-soft:#F4DEDA; --later:#3C5675; --later-soft:#E3E9F0;
  --f-display:"Noto Serif TC","Songti TC","PMingLiU",serif;
  --f-mono:"IBM Plex Mono",ui-monospace,Menlo,monospace;
  color-scheme:light;
}
html.line{height:100%;overflow:hidden;background:var(--bg)}
html.line body{height:100%;overflow:hidden;margin:0;padding:0;background:var(--bg);color:var(--ink);-webkit-tap-highlight-color:transparent}
html.line.big body{zoom:1}
html.line .wrap:first-child,html.line body>.wrap{max-width:560px;height:100%;height:100dvh;margin:0 auto;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:0;
  padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px);background:var(--bg)}
html.line body.has-exit{padding-top:0}
html.line body.has-exit>.wrap{height:calc(100dvh - 46px);margin-top:46px}
html.line .top,html.line footer,html.line #topnav{display:none!important}
html.line button{-webkit-tap-highlight-color:transparent}
html.line :focus-visible{outline:3px solid var(--acc);outline-offset:2px}
html.line [data-focus]:focus:not(:focus-visible),html.line h1[tabindex="-1"]:focus{outline:none}
html.line .vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* 刊頭 */
.lmast{display:flex;align-items:center;gap:6px;padding:8px 12px 7px;border-bottom:3px solid var(--ink);box-shadow:0 4px 0 -3px var(--bg),0 5px 0 -3px var(--ink);position:relative;z-index:3;background:var(--bg)}
.lnav{width:40px;height:40px;display:grid;place-items:center;border:0;background:none;color:var(--ink);border-radius:50%;font-family:var(--f-display);font-weight:900;font-size:20px}
.lnav:active{background:var(--acc-soft)}
.lbrand{border:0;background:none;color:var(--ink);font-family:var(--f-display);font-weight:900;font-size:19px;letter-spacing:.02em;padding:4px 2px}
.lsp{flex:1}
.lmast .bigtxt{border:1.5px solid var(--ink);background:none;color:var(--ink);border-radius:999px;padding:4px 12px;font-size:14px;font-weight:700;min-height:34px}
.lmast .bigtxt[aria-pressed="true"]{background:var(--ink);color:var(--paper)}

/* 舞台：每一步是一張面板，往左滑 */
html.line #app{position:relative;overflow:hidden;min-height:0;display:block;gap:0}
.lpanel{position:absolute;inset:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;padding:16px 18px 12px;transition:transform .45s cubic-bezier(.22,.8,.24,1),opacity .45s;will-change:transform;background:var(--bg)}
.lpanel.from-right{transform:translateX(100%)} .lpanel.from-left{transform:translateX(-100%)}
.lpanel.out{pointer-events:none;z-index:0}
.lpanel.out.to-left{transform:translateX(-35%);opacity:0} .lpanel.out.to-right{transform:translateX(35%);opacity:0}
html.line.big .lpanel{zoom:1.15}
html.line.big .lsheet-in{zoom:1.15}
@media (prefers-reduced-motion:reduce){.lpanel{transition:opacity .2s}.lpanel.from-right,.lpanel.from-left,.lpanel.out.to-left,.lpanel.out.to-right{transform:none}}

/* 共用字 */
.lscreen{min-height:100%;display:flex;flex-direction:column;gap:14px}
.lhead{display:flex;flex-direction:column;gap:6px}
.lhead.row{flex-direction:row;justify-content:space-between;align-items:flex-end;gap:12px}
.lno{font-family:var(--f-mono);font-size:12px;letter-spacing:.08em;color:var(--acc);display:flex;align-items:center;gap:6px;border-top:1px solid var(--ink);padding-top:6px}
.lno .cshape{width:16px;height:16px;fill:var(--acc)}
html.line h1{font-family:var(--f-display);font-weight:900;font-size:clamp(30px,8.6vw,42px);line-height:1.12;letter-spacing:-.01em}
.lnote{font-size:15px;color:var(--muted);line-height:1.6}
.lgo{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:56px;padding:0 22px;border:0;border-radius:0;background:var(--ink);color:var(--paper);font-weight:700;font-size:17px;letter-spacing:.02em}
.lgo svg{transition:transform .2s}
.lgo:hover svg,.lgo:active svg{transform:translateX(5px)}
.lgo:active{background:var(--acc)}
.lgo:disabled{background:var(--line);color:var(--muted);cursor:not-allowed}
.lgo:disabled svg{transform:none}
.lgo.sm{min-height:46px;padding:0 16px;font-size:16px}
.lsub{border:0;background:none;color:var(--ink);font-size:15px;font-weight:500;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px;padding:8px 2px;min-height:44px}
.lfoot{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid var(--ink);padding-top:10px}

/* 封面 */
.lcover{min-height:100%;display:flex;flex-direction:column;gap:12px}
.lhuge{font-size:clamp(46px,min(15vw,6.9vh),84px)!important;line-height:1.02!important;letter-spacing:-.03em!important;margin-top:4px}
.lhuge{background:linear-gradient(transparent 62%,var(--acc-soft) 62%,var(--acc-soft) 92%,transparent 92%) no-repeat;background-size:0 100%;animation:hl 1s .5s cubic-bezier(.3,.7,.2,1) forwards}
@keyframes hl{to{background-size:100% 100%}}
.llead{font-size:17px;line-height:1.6;max-width:30em}
.lstats{display:grid;grid-template-columns:repeat(3,1fr);margin:0;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}
.lstats div{padding:10px 8px 8px;border-left:1px solid var(--line)} .lstats div:first-child{border-left:0;padding-left:0}
.lstats dt{font-family:var(--f-display);font-weight:900;font-size:30px;line-height:1.1}
.lstats dd{margin:0;font-size:13px;color:var(--muted)}
.lcta{margin-top:auto;display:flex;flex-direction:column;align-items:stretch;gap:0}
.lcta .lsub{align-self:center}

/* 戶籍地圖 */
.lmap{flex:1 1 0;min-height:180px;position:relative}
html.line .lmap svg{position:absolute;inset:0;width:100%;height:100%;max-width:none}
html.line .twmap .cty{fill:var(--paper);stroke:var(--ink);stroke-width:.8}
html.line .twmap .cty:hover{fill:var(--acc-soft)}
html.line .twmap .cty.on{fill:var(--acc);filter:none;transform:translateY(-3px) scale(1.04)}
html.line .twmap .lab{stroke:var(--bg);font-family:var(--f-body)}
html.line .twmap .lab.on{fill:var(--acc)} html.line .twmap .dot.on{fill:var(--acc)} html.line .twmap .lead.on{stroke:var(--acc)}
html.line .twmap .isle .ibox{fill:var(--paper);stroke:var(--ink);stroke-dasharray:none;stroke-width:1}
html.line .twmap .isle .cty{fill:var(--ink);stroke:var(--ink);stroke-width:.7;transform:none}
html.line .twmap .isle:hover .ibox{fill:var(--acc-soft)}
html.line .twmap .isle.on .ibox{fill:var(--acc-soft);stroke:var(--acc);stroke-width:2}
html.line .twmap .isle .cty.on{fill:var(--acc);stroke:var(--acc)}
html.line .twmap .isle .lab{font-size:11px;font-weight:700}
.lpick{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:2px solid var(--ink);padding-top:10px}
.lpick[hidden]{display:none}
.lpick.pop{animation:lup .35s cubic-bezier(.2,.8,.2,1)}
@keyframes lup{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.lpick-n{font-family:var(--f-display);font-weight:900;font-size:24px;display:flex;align-items:center;gap:6px}
.lpick-n .cshape{width:22px;height:22px;fill:var(--acc)}
.lpick-s{font-size:13px;color:var(--muted);line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.lpick .lgo{flex:none;white-space:nowrap}
.lalt{align-self:center;font-size:14px;color:var(--muted);padding:2px;min-height:36px}

/* 文件樹 */
html.line .live{position:relative;top:auto;align-self:flex-end;flex-direction:column;align-items:flex-end;gap:0;background:none;color:var(--ink);box-shadow:none;border:0;border-radius:0;padding:0;font-weight:500;flex:none}
html.line .live b{font-family:var(--f-display);font-weight:900;font-size:44px;line-height:1;color:var(--acc)}
html.line .live span{font-size:12px;color:var(--muted)}
html.line .live .delta{position:absolute;right:-6px;top:-10px;background:var(--acc);color:#fff;font-size:12px;font-weight:700;border-radius:999px;padding:0 7px}
.ltree{position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:8px;padding-left:18px;flex:1}
.litems{gap:10px}
.litems h1{font-size:clamp(28px,8vw,38px)!important}
.ltree::before{content:"";position:absolute;left:4px;top:4px;bottom:16px;width:2px;background:var(--ink)}
.ltree::after{content:"";position:absolute;left:0;top:-2px;width:10px;height:10px;border-radius:50%;background:var(--ink)}
.lbr{position:relative;display:flex;flex-direction:column;gap:4px}
.lbr::before{content:"";position:absolute;left:-14px;top:9px;width:10px;height:2px;background:var(--ink);transition:background .2s}
.lbr-h{font-family:var(--f-mono);font-size:12px;letter-spacing:.06em;display:flex;gap:8px;color:var(--ink);transition:color .2s}
.lbr-h span{color:var(--muted)}
.lbr.lit::before{background:var(--acc)}
.lbr.lit .lbr-h,.lbr.lit .lbr-h span{color:var(--acc)}
.lnodes{display:flex;flex-wrap:wrap;gap:5px;position:relative}
.lnode{display:inline-flex;align-items:center;gap:5px;border:1.5px solid var(--ink);background:var(--paper);color:var(--ink);border-radius:3px;padding:3px 9px 3px 6px;font-size:14.5px;font-weight:500;min-height:36px;transition:background .15s,color .15s,border-color .15s,transform .12s}
.lnode svg{flex:none;stroke:currentColor;color:inherit}
.lnode:active{transform:scale(.96)}
.lnode.on{background:var(--acc);border-color:var(--acc);color:#fff;font-weight:700}
.lnode.on svg *{stroke:#fff}

/* 補充題 */
.lqbody{display:flex;flex-direction:column;gap:10px}
.lopts{display:flex;flex-direction:column;border-top:1px solid var(--ink)}
.lopts button{display:flex;justify-content:space-between;align-items:center;gap:12px;text-align:left;border:0;border-bottom:1px solid var(--ink);background:none;color:var(--ink);font-family:var(--f-display);font-weight:700;font-size:20px;line-height:1.35;padding:15px 4px;min-height:60px;transition:background .15s,color .15s,padding .15s}
.lopts button::after{content:"→";font-family:var(--f-body);font-weight:400;opacity:.35;transition:transform .2s,opacity .2s}
.lopts button:hover::after{opacity:1;transform:translateX(4px)}
.lopts button.on{background:var(--acc);color:#fff;padding-left:14px}
.lopts button.on::after{opacity:1}
.lopts button.was{box-shadow:inset 4px 0 0 var(--acc);padding-left:14px}
.lqbody .q{background:none;border:0;padding:0;box-shadow:none}
.lqbody .q>h3,.lqbody .q>.why:first-of-type{display:none}
.lqbody .q .seg{flex-direction:column}
.lqbody .q select{font-size:18px;padding:14px 12px;border:1.5px solid var(--ink);border-radius:0;background:var(--paper)}
.lqbody .q .seg button{border:0;background:none;text-decoration:underline;text-underline-offset:4px;flex:none}

/* 底部路線 */
.lrail{height:60px;border-top:1px solid var(--ink);overflow:hidden;background:var(--bg);padding-bottom:env(safe-area-inset-bottom,0px);box-sizing:content-box}
.lrail svg{display:block;overflow:visible;height:100%}
.rl-done{stroke:var(--ink);stroke-width:2.5}
.rl-todo{stroke:var(--ink);stroke-width:1.5;stroke-dasharray:2 5;opacity:.5}
.rs{fill:var(--bg);stroke:var(--ink);stroke-width:2}
.rs-now{fill:var(--acc);stroke:var(--ink);stroke-width:2}
.rt{font-size:11px;fill:var(--muted);font-family:var(--f-body)}
.rt-now{font-size:12px;font-weight:700;fill:var(--acc);font-family:var(--f-body)}
.rg.grow{animation:railgo .5s cubic-bezier(.22,.8,.24,1)}
@keyframes railgo{from{transform:translateX(var(--gap))}to{transform:none}}
.rg.grow .rs-now{animation:stop .5s .3s both}
@keyframes stop{from{r:3}to{r:8}}

/* 結果：旗桿與旗子 */
.lresult{position:relative;padding-left:30px;gap:10px}
.lpole{position:absolute;left:8px;bottom:-10px;width:3px;height:0;background:var(--ink);animation:pole .7s .1s cubic-bezier(.3,.7,.2,1) forwards}
.lpole::before{content:"";position:absolute;left:50%;top:-8px;width:12px;height:12px;margin-left:-6px;border-radius:50%;background:var(--ink)}
@keyframes pole{to{height:calc(100% + 10px)}}
.lflag{position:relative;align-self:flex-start;min-width:76%;margin-left:-19px;padding:12px 34px 12px 18px;background:var(--acc);color:#fff;
  clip-path:polygon(0 0,100% 0,92% 50%,100% 100%,0 100%);transform-origin:top left;transform:translateY(-130%) scaleY(.2);opacity:0;
  animation:flag .7s .75s cubic-bezier(.3,1.35,.5,1) forwards}
@keyframes flag{60%{opacity:1}to{transform:none;opacity:1}}
.lflag::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.18) 45%,transparent 60%);animation:wave 2.6s 1.5s ease-in-out 2}
@keyframes wave{from{transform:translateX(-60%)}to{transform:translateX(60%)}}
.lflag-k{font-size:13px;display:flex;align-items:center;gap:5px;opacity:.95}
.lflag-k .cshape{width:15px;height:15px;fill:#fff}
.lflag-n{display:flex;align-items:baseline;gap:8px}
.lflag-n b{font-family:var(--f-display);font-weight:900;font-size:64px;line-height:1;font-variant-numeric:tabular-nums}
.lflag-n span{font-family:var(--f-display);font-weight:900;font-size:22px}
.lflag-s{font-size:13px;opacity:.9}
.ltiles-wrap{flex:1;min-height:170px;display:flex;flex-direction:column;overflow:hidden}
.ltiles{flex:1;display:flex;transform:translateX(calc(var(--pg,0) * -100%));transition:transform .4s cubic-bezier(.22,.8,.24,1);touch-action:pan-y}
.lpage{flex:0 0 100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-content:start;padding:1px}
.ltile{display:flex;flex-direction:column;justify-content:space-between;text-align:left;gap:2px;height:76px;border:1.5px solid var(--ink);border-top-width:5px;background:var(--paper);color:var(--ink);padding:6px 9px 7px;border-radius:0;overflow:hidden;
  opacity:0;animation:lup .4s calc(1.3s + var(--i,0) * 45ms) both;transition:transform .12s}
.ltile:active{transform:scale(.97)}
.ltile .lt{font-weight:700;font-size:14.5px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ltile .lk{font-size:12px;color:var(--muted);display:flex;gap:6px;white-space:nowrap;overflow:hidden}
.ltile .lk i{font-style:normal;font-family:var(--f-mono);font-size:11px;color:var(--muted);font-weight:500}
.ltile.empty{grid-column:1/-1;border-style:dashed}
.ltile.k-likely{border-top-color:var(--acc)}
.ltile.k-likely .lk{color:var(--acc);font-weight:700}
.ltile.k-check{border-top-color:var(--ink)}
.ltile.k-later{border-style:dashed;border-top-style:solid;border-top-color:var(--line)}
.ltile.k-g{background:var(--ink);color:#fff;border-color:var(--ink)} .ltile.k-g .ln,.ltile.k-g .lk{color:#D9D9D9}
.ltile.uni{background:var(--acc-soft);border-top-color:var(--acc)}
.ldots{height:26px;display:flex;justify-content:center;align-items:center;gap:6px}
.ldots i{width:6px;height:6px;border-radius:50%;background:var(--line);transition:background .2s,width .2s}
.ldots i.on{background:var(--ink);width:16px;border-radius:3px}
.lpg{width:32px;height:26px;border:0;background:none;color:var(--ink);font-size:20px;line-height:1}
.ltool{display:flex;flex-wrap:wrap;gap:6px;opacity:0;animation:lup .4s 1.6s both}
.ltool button{flex:1 1 auto;min-height:42px;border:1.5px solid var(--ink);background:var(--paper);color:var(--ink);font-size:14px;font-weight:700;padding:0 10px;border-radius:0}
.ltool button b{font-family:var(--f-mono);font-weight:500;color:var(--acc)}
.ltool button.hot{background:var(--ink);color:#fff} .ltool button.hot b{color:#B9C3FF}
.ltool button:active{background:var(--acc);color:#fff;border-color:var(--acc)}
.lfine{font-size:11px;color:var(--muted);text-align:center;margin-top:-2px}

/* 從下方浮出的面板 */
.lsheet-bg{position:fixed;inset:0;z-index:50;background:rgba(20,20,20,.38);opacity:0;transition:opacity .3s}
.lsheet-bg.on{opacity:1}
.lsheet{position:fixed;left:0;right:0;bottom:0;margin:0 auto;max-width:560px;max-height:88dvh;z-index:51;overflow-y:auto;overscroll-behavior:contain;background:var(--bg);border-top:3px solid var(--ink);
  padding:6px 16px calc(24px + env(safe-area-inset-bottom,0px));transform:translateY(100%);transition:transform .32s cubic-bezier(.22,.8,.24,1)}
.lsheet.on{transform:none}
.lsheet[hidden],.lsheet-bg[hidden]{display:none}
.lsh-top{position:sticky;top:-6px;z-index:2;display:flex;justify-content:flex-end;align-items:center;background:var(--bg);margin:-6px -16px 0;padding:8px 12px 6px;border-bottom:1px solid var(--line)}
.lgrip{position:absolute;left:50%;top:8px;width:44px;height:4px;margin-left:-22px;border-radius:2px;background:var(--line)}
.lclose{border:1.5px solid var(--ink);background:var(--bg);color:var(--ink);font-size:14px;font-weight:700;padding:4px 14px;min-height:36px;border-radius:999px}
.lsheet-in{display:flex;flex-direction:column;gap:14px;padding-top:6px}
.lsheet-h{font-family:var(--f-display);font-weight:900;font-size:24px}
.lsheet .region{margin-top:4px}
.lsheet .counties{grid-template-columns:repeat(4,minmax(0,1fr))}
.lsheet .counties button{border:1.5px solid var(--ink);border-radius:0;background:var(--paper);min-height:46px}
.lsheet .slip,.lsheet .face{border:0;border-top:5px solid var(--ink);border-radius:0;background:var(--bg)}
.lsheet .slip.flip{border:0}
.lsheet .slip.likely,.lsheet .slip.likely .face{border-top-color:var(--acc)}
.lsheet .slip-main{border-top:0;padding:12px 0 6px}
.lsheet .slip h3{font-family:var(--f-display);font-weight:900;font-size:24px;line-height:1.3}
.lsheet .amount{font-family:var(--f-display);font-weight:900}
.lsheet .fliptn{border-radius:0;border-color:var(--ink);background:var(--ink);color:#fff}
.lsheet .ringrow{display:flex;align-items:center;gap:12px}
.lsheet .ring .bar{stroke:var(--acc)} .lsheet .ring.done .bar{stroke:var(--ok)}
.lsheet .savebar{display:flex;gap:10px;align-items:center}
.lsoon{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink)}
.lsoon button{width:100%;display:flex;justify-content:space-between;gap:10px;border:0;border-bottom:1px solid var(--ink);background:none;color:var(--ink);padding:14px 2px;font-size:16px;font-weight:700;text-align:left}
.lsoon em{font-style:normal;font-family:var(--f-mono);color:var(--acc);white-space:nowrap}
.lsheet .copy,.lsheet .tele{border-radius:0}

/* 沒換成新樣子的頁面（一步步引導、學生專區、特殊狀況）也用同一套字和線 */
html.line .lpanel>.steps{font-family:var(--f-mono);font-size:12px;letter-spacing:.08em;color:var(--acc);border-top:1px solid var(--ink);padding-top:6px;display:block}
html.line .lpanel .seg button{border:1.5px solid var(--ink);border-radius:0;background:var(--paper);font-size:17px;padding:13px 14px}
html.line .lpanel .seg button.on{background:var(--acc);border-color:var(--acc);color:#fff}
html.line .lpanel .q{background:none;border:0;border-top:1px solid var(--ink);border-radius:0;padding:12px 0}
html.line .lpanel .btn{border-radius:0;background:var(--ink);border-color:var(--ink);min-height:52px}
html.line .lpanel .bar{background:var(--bg);border-top:1px solid var(--ink)}
html.line .lpanel .card{border:1.5px solid var(--ink);border-radius:0}
html.line .lpanel .card.on{background:var(--acc-soft);border-color:var(--acc)}
html.line .lpanel>*+*{margin-top:14px}
html.line .lpanel>.lscreen,html.line .lpanel>.lcover{margin-top:0}

@media (max-height:700px){
  .lhuge{font-size:clamp(46px,14vw,70px)!important}
  .lstats dt{font-size:24px}
  .llead{font-size:16px}
  .lnode{min-height:34px;padding:3px 9px 3px 6px;font-size:14px}
  html.line h1{font-size:clamp(26px,7.6vw,36px)}
  .lflag-n b{font-size:52px}
}
@media print{html.line,html.line body{height:auto;overflow:visible}html.line body>.wrap{display:block;height:auto}.lmast,.lrail,.lsheet-bg{display:none!important}.lsheet{position:static;transform:none;max-height:none;border:0}}

/* 封面目次 */
.ltoc{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.ltoc li{display:grid;grid-template-columns:34px 1fr auto;align-items:baseline;gap:8px;padding:4px 0;border-bottom:1px solid var(--line);opacity:0;animation:lup .4s calc(.9s + var(--k,0) * 90ms) both}
.ltoc li:nth-child(2){--k:1}.ltoc li:nth-child(3){--k:2}.ltoc li:nth-child(4){--k:3}
.ltoc span{font-family:var(--f-mono);font-size:12px;color:var(--acc)}
.ltoc b{font-family:var(--f-display);font-weight:900;font-size:17px}
.ltoc em{font-style:normal;font-size:13px;color:var(--muted)}
@media (max-height:780px){.ltoc{display:none}}
/* 補充題的大號碼 */
.lfollow{position:relative;overflow:hidden}
.lbig{position:absolute;right:0;bottom:0;font-family:var(--f-display);font-weight:900;font-size:200px;line-height:.8;color:var(--acc-soft);pointer-events:none;letter-spacing:-.04em;z-index:-1}
.lbig small{font-size:70px;color:var(--line)}
.lfollow>*:not(.lbig){position:relative}
/* 矮螢幕（iPhone SE、小安卓）：分支標籤改放左邊，省下五行 */
@media (max-width:380px){
  .lbr{display:grid;grid-template-columns:58px 1fr;gap:6px;align-items:start}
  .lbr::before{top:14px}
  .lbr-h{flex-direction:column;gap:0;font-size:11.5px;line-height:1.3;padding-top:5px}
  .lbr-h span{font-size:10.5px}
}
@media (max-height:760px){
  .lmast{padding:4px 10px 5px} .lnav{width:36px;height:36px} .lbrand{font-size:17px}
  .lrail{height:50px} .lrail svg{height:50px}
  .lpanel{padding:12px 16px 10px}
  .litems{gap:8px}
  .ltree{gap:6px}
  .lbr{display:grid;grid-template-columns:58px 1fr;gap:6px;align-items:start}
  .lbr::before{top:14px}
  .lbr-h{flex-direction:column;gap:0;font-size:11.5px;line-height:1.3;padding-top:5px}
  .lbr-h span{font-size:10.5px}
  .lnode{min-height:31px;font-size:13.5px;padding:1px 8px 1px 5px}
  .lnodes{gap:4px}
  .litems h1{font-size:28px!important}
  .lrail svg{height:100%}
  .lnode svg{width:17px;height:17px}
  html.line .live b{font-size:36px}
  .lfoot{padding-top:6px}
  .lfoot .lgo{min-height:48px}
}

/* 複選小格 */
.lchip{display:flex;flex-direction:column;justify-content:center;gap:1px;text-align:left;height:64px;border:1.5px solid var(--ink);background:var(--paper);color:var(--ink);padding:3px 8px 3px 30px;position:relative;font-size:13.5px;line-height:1.28;border-radius:0;transition:background .15s,color .15s}
.lchip::before{content:"";position:absolute;left:9px;top:50%;width:13px;height:13px;margin-top:-7px;border:1.5px solid var(--ink);background:var(--paper)}
.lchip.on{background:var(--acc);border-color:var(--acc);color:#fff;font-weight:700}
.lchip.on::before{background:#fff;border-color:#fff;box-shadow:inset 0 0 0 3px var(--acc)}
.lchip span{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.lchip em{font-style:normal;font-family:var(--f-mono);font-size:10.5px;color:var(--muted);font-weight:500}
.lchip.on em{color:#D6DBFF}
.lask.multi .ltiles-wrap{min-height:140px}
.lcnt{font-size:14px;color:var(--muted)}
.lpgn{font-family:var(--f-mono);font-size:11px;color:var(--muted);margin-left:4px}
.lpg:disabled{opacity:.25}
.lpage[inert]{pointer-events:none}
.lresult,.lask.multi{height:100%;min-height:0}
@media (max-width:380px) and (max-height:830px){.ltoc{display:none}}
