/* J47 — /links/ (link-in-bio, replaces Linktree). Mobile-first single column. */
.jl-body{min-height:100vh;min-height:100dvh}
.jl-bg{position:fixed;inset:0;z-index:0;background-size:cover;background-position:center;filter:grayscale(.35) brightness(.38) blur(2px);transform:scale(1.06)}
.jl-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,10,9,.35) 0%,rgba(10,10,9,.75) 45%,var(--ink) 100%)}
.jl{position:relative;z-index:1;width:100%;max-width:560px;margin-inline:auto;padding:max(14px,env(safe-area-inset-top)) 18px max(36px,env(safe-area-inset-bottom))}

.jl-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;height:44px}
.jl-bar .j-tools,.jl-bar .j-tools .j-lang{display:flex}
.jl-bar .j-tools{padding:3px 4px 3px 12px}

.jl-id{text-align:center;padding:30px 0 6px}
.jl-mark{width:108px;height:108px;margin:0 auto 22px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--glass-bd);background:var(--glass-bg);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--glass-sh);position:relative}
.jl-mark::before{content:"";position:absolute;inset:-7px;border-radius:50%;border:1px dashed var(--line);opacity:.8}
.jl-logo img{height:40px;width:auto}
.jl-motto{margin:12px auto 0;font-weight:700;font-size:clamp(28px,8vw,40px);line-height:1.12;letter-spacing:-.015em;max-width:15ch;text-wrap:balance}
.jl-city{margin:10px 0 0;color:var(--dim);font-size:13.5px}

.jl-icons{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:22px}
.jl-icons a{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--glass-bd);background:var(--glass-bg);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);transition:background .25s,color .25s,border-color .25s,transform .25s}
.jl-icons a:hover{color:var(--amber);border-color:var(--amber);transform:translateY(-2px)}
.jl-ic{width:20px;height:20px;flex:none}

.jl-sec{margin-top:34px}
.jl-h{display:flex;align-items:center;gap:12px;margin:0 0 12px;font-size:13px;font-weight:400;letter-spacing:.04em;color:var(--dim)}
.lang-en .jl-h{font-size:11px;letter-spacing:.32em;text-transform:uppercase}
.jl-h span{color:var(--amber);letter-spacing:.12em}
.jl-h::after{content:"";flex:1;height:1px;background:var(--line)}
.jl-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}

.jl-a{display:flex;align-items:center;gap:14px;min-height:64px;padding:12px 18px;border-radius:14px;border:1px solid var(--glass-bd);background:var(--glass-bg);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);transition:background .25s,border-color .25s,transform .25s,color .25s}
.jl-a:hover{border-color:var(--amber);transform:translateY(-1px)}
.jl-a:active{transform:scale(.99)}
.jl-a .jl-ic{width:22px;height:22px;color:var(--amber)}
.jl-t{flex:1;display:flex;flex-direction:column;min-width:0;line-height:1.35}
.jl-t b{font-weight:500;font-size:16px}
.jl-t small{font-size:12.5px;color:var(--dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.jl-go{font-size:15px;color:var(--dim);transition:transform .25s,color .25s}
.jl-a:hover .jl-go{color:var(--amber);transform:translateX(3px)}

.jl-a.is-main{background:var(--amber);border-color:var(--amber);color:#0a0a09}
.jl-a.is-main .jl-ic,.jl-a.is-main .jl-go,.jl-a.is-main small{color:rgba(10,10,9,.72)}
.jl-a.is-main:hover{background:var(--paper);border-color:var(--paper);color:var(--ink)}
.jl-a.is-main:hover :is(.jl-ic,.jl-go,small){color:var(--ink)}
.jl-a.is-hot{border-color:var(--amber);box-shadow:0 0 0 1px var(--amber) inset}

.jl-works{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.jl-w{display:flex;flex-direction:column;gap:2px;min-width:0}
.jl-w .ph{display:block;aspect-ratio:16/9;overflow:hidden;border-radius:10px;background:var(--ink3);margin-bottom:8px}
.jl-w img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.jl-w:hover img{transform:scale(1.05)}
.jl-w small{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--amber)}
.jl-w b{font-weight:500;font-size:13.5px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

.jl-foot{margin-top:44px;text-align:center;color:var(--dim);font-size:12px}
.jl-foot p{margin:0 0 8px}

/* light: paper + glass, the photo fades into paper */
[data-theme="light"] .jl-bg{filter:grayscale(.2) brightness(1.05) blur(3px);opacity:.5}
[data-theme="light"] .jl-bg::after{background:linear-gradient(180deg,rgba(239,233,220,.25) 0%,rgba(239,233,220,.82) 40%,var(--ink) 100%)}
[data-theme="light"] .jl-a,[data-theme="light"] .jl-icons a,[data-theme="light"] .jl-mark{box-shadow:var(--glass-sh)}
[data-theme="light"] .jl-a.is-main{color:#fff8ea}
[data-theme="light"] .jl-a.is-main :is(.jl-ic,.jl-go,small){color:rgba(255,248,234,.8)}
[data-theme="light"] .jl-a.is-main:hover{background:var(--paper);color:var(--ink)}
[data-theme="light"] .jl-a.is-main:hover :is(.jl-ic,.jl-go,small){color:var(--ink)}

@media (min-width:700px){.jl{padding-top:28px}.jl-id{padding-top:44px}}
