/* /jail – fängelset. Mörk gangsterstil, mobil först. */
.jl-page{max-width:1100px;margin:0 auto;padding:16px 12px 40px;color:#e8e2d4;font-family:inherit}
.jl-empty{color:#777;padding:16px;text-align:center}
.jl-hero{position:relative;overflow:hidden;border-radius:14px;border:1px solid #3a2a1a;background:linear-gradient(160deg,#1b1410,#0d0b0a);padding:22px 18px;margin-bottom:14px}
.jl-hero.in{border-color:#8b1a1a;box-shadow:0 0 30px rgba(183,28,28,.25) inset}
.jl-hero.free{border-color:#2e4d2e}
.jl-bars{position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 38px,rgba(255,255,255,.05) 38px 46px);pointer-events:none}
.jl-hero__body{position:relative;text-align:center}
.jl-hero__tag{display:inline-block;font:700 11px/1 'Oswald',sans-serif;letter-spacing:3px;color:#c9a227;border:1px solid #6b5514;padding:4px 8px;border-radius:4px;margin-bottom:8px}
.jl-hero h1{font:700 1.6rem/1.2 'Oswald',sans-serif;letter-spacing:2px;margin:6px 0;color:#f5e9d0;text-transform:uppercase}
.jl-count{font:700 3.2rem/1 'Oswald',monospace;color:#ef5350;letter-spacing:4px;text-shadow:0 0 18px rgba(239,83,80,.45);margin:8px 0}
.jl-prog{height:8px;background:#221a14;border-radius:6px;overflow:hidden;max-width:420px;margin:0 auto 10px}
.jl-prog i{display:block;height:100%;background:linear-gradient(90deg,#8b1a1a,#c9a227);transition:width 1s linear}
.jl-reason{color:#bfb39a;margin:6px 0 0;font-size:.95rem}.jl-reason b{color:#f5e9d0}
.jl-result{border-radius:10px;padding:12px 14px;margin-bottom:14px;font-weight:600}
.jl-result.ok{background:#12301a;border:1px solid #2e7d32;color:#b9f6ca}
.jl-result.bad{background:#3a1212;border:1px solid #b71c1c;color:#ffcdd2}
.jl-ways h2,.jl-inmates h2{font:700 1.05rem/1 'Oswald',sans-serif;letter-spacing:2px;text-transform:uppercase;color:#c9a227;margin:4px 0 10px}
.jl-inmates h2 span{background:#3a1212;color:#ef9a9a;border-radius:10px;padding:2px 8px;font-size:.8rem;margin-left:6px}
.jl-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.jl-way{background:#15110e;border:1px solid #33271c;border-radius:12px;padding:14px 12px;display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.jl-way--info{border-style:dashed}
.jl-way__icon{font-size:1.6rem}
.jl-way b{font:700 1rem 'Oswald',sans-serif;letter-spacing:1px;text-transform:uppercase}
.jl-way small{color:#9a8f7a;font-size:.82rem;flex:1}
.jl-way__stat{font-size:.85rem;color:#e3c46b}
.jl-way em{color:#ef9a9a;font-size:.78rem;font-style:normal}
.jl-btn{appearance:none;border:1px solid #5a4630;background:#2a2019;color:#f5e9d0;font:700 .85rem 'Oswald',sans-serif;letter-spacing:1.5px;text-transform:uppercase;padding:9px 14px;border-radius:8px;cursor:pointer;width:100%}
.jl-btn:hover:not(:disabled){filter:brightness(1.2)}
.jl-btn:disabled{opacity:.45;cursor:not-allowed}
.jl-btn--gold{background:linear-gradient(180deg,#c9a227,#8a6d12);border-color:#e3c46b;color:#1a1208}
.jl-btn--red{background:linear-gradient(180deg,#b71c1c,#7a1010);border-color:#ef5350}
.jl-btn--big{padding:14px;font-size:1.05rem;margin-top:10px}
.jl-btn--sm{width:auto;padding:6px 10px;font-size:.75rem}
.jl-link{background:none;border:0;color:#e3c46b;text-decoration:underline;cursor:pointer}
.jl-pick{margin-top:12px;background:#120e0b;border:1px solid #8b1a1a;border-radius:12px;padding:14px}
.jl-pins{display:flex;gap:8px;margin:10px 0}
.jl-pin{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#221a14;border:1px solid #3a2a1a;color:#777}
.jl-pin.cur{border-color:#c9a227;color:#c9a227;box-shadow:0 0 10px rgba(201,162,39,.4)}
.jl-pin.hit{background:#12301a;border-color:#2e7d32;color:#b9f6ca}
.jl-pin.miss{background:#3a1212;border-color:#b71c1c;color:#ffcdd2}
.jl-track{position:relative;height:34px;background:#221a14;border-radius:8px;overflow:hidden;border:1px solid #3a2a1a}
.jl-zone{position:absolute;top:0;bottom:0;background:rgba(46,125,50,.55);border-left:2px solid #66bb6a;border-right:2px solid #66bb6a}
.jl-marker{position:absolute;top:-2px;bottom:-2px;width:4px;margin-left:-2px;background:#ffd54f;box-shadow:0 0 8px #ffd54f;animation:jl-move 1300ms linear infinite alternate}
@keyframes jl-move{from{left:0}to{left:100%}}
.jl-cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:14px;margin-top:16px}
.jl-inmates{background:#15110e;border:1px solid #33271c;border-radius:12px;padding:14px;align-self:start}
.jl-inmate{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-top:1px solid #241c15}
.jl-inmate.me .jl-inmate__who a{color:#ef9a9a}
.jl-inmate__who{display:flex;flex-direction:column;min-width:0}
.jl-inmate__who a{color:#f5e9d0;font-weight:700;text-decoration:none}
.jl-inmate__who small{color:#8a7f6a;font-size:.78rem;overflow-wrap:anywhere}
.jl-inmate__why{color:#bfa77a!important;font-style:italic}
.jl-inmate__side{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex-shrink:0}
.jl-inmate__time{font-family:'Oswald',monospace;color:#ef5350}
.jl-hint{color:#8a7f6a;font-size:.78rem}
.jl-chat{background:#15110e;border:1px solid #33271c;border-radius:12px;display:flex;flex-direction:column;height:clamp(380px,60vh,560px)}
.jl-chat__head{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-bottom:1px solid #241c15;font:700 1rem 'Oswald',sans-serif;letter-spacing:2px;text-transform:uppercase;color:#c9a227}
.jl-chat__head small{font:400 .75rem inherit;letter-spacing:0;text-transform:none;color:#8a7f6a}
.jl-chat__scroll{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:8px}
.jl-chat__empty{color:#555;text-align:center;margin:auto}
.jl-msg{max-width:80%;align-self:flex-start;background:#1c1c2a;border:1px solid #2e3160;border-radius:12px 12px 12px 2px;padding:7px 12px}
.jl-msg.me{align-self:flex-end;background:#3a1414;border-color:#8b1a1a;border-radius:12px 12px 2px 12px}
.jl-msg b{display:block;color:#ef9a9a;font-size:.75rem}
.jl-msg p{margin:2px 0;white-space:pre-wrap;overflow-wrap:anywhere}
.jl-msg small{color:#666;font-size:.65rem}
.jl-chat__note{padding:6px 14px;font-size:.8rem;color:#9a8f7a}.jl-chat__note.err{color:#ef9a9a}
.jl-chat__input{display:flex;gap:8px;padding:10px;border-top:1px solid #241c15}
.jl-chat__input input{flex:1;min-width:0;background:#0d0b0a;border:1px solid #3a2a1a;border-radius:8px;color:#f5e9d0;padding:9px 12px}
.jl-chat__input .jl-btn{width:auto}
.jl-caught{position:fixed;inset:0;z-index:2000;background:rgba(0,0,0,.82);display:grid;place-items:center;padding:16px;animation:jl-fade .3s ease}
.jl-caught__card{max-width:420px;width:100%;text-align:center;background:linear-gradient(180deg,#2a0d0d,#120808);border:2px solid #b71c1c;border-radius:16px;padding:26px 20px;box-shadow:0 0 50px rgba(183,28,28,.5)}
.jl-caught__siren{font-size:2.4rem;animation:jl-blink .6s steps(2) infinite}
.jl-caught h1{font:700 2.2rem/1.1 'Oswald',sans-serif;letter-spacing:3px;color:#ef5350;text-transform:uppercase;margin:10px 0}
.jl-caught__reason{color:#f5e9d0;margin:0 0 8px}
.jl-caught__time{font:700 2.4rem 'Oswald',monospace;color:#ffd54f;margin:6px 0}
.jl-caught small{display:block;color:#bfb39a;margin-bottom:14px}
@keyframes jl-blink{50%{opacity:.35}}
@keyframes jl-fade{from{opacity:0}}
@media (max-width:900px){.jl-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.jl-cols{grid-template-columns:minmax(0,1fr)}}
@media (max-width:480px){.jl-count{font-size:2.5rem}.jl-hero h1{font-size:1.3rem}.jl-way{padding:12px 10px}}
