/* JodNote v19 PWA + Mobile UX */
:root{--mobile-nav-h:74px}
[hidden]{display:none!important}
.jn-connection-toast{position:fixed;left:50%;bottom:calc(var(--mobile-nav-h) + 18px + env(safe-area-inset-bottom));transform:translate(-50%,18px);z-index:120;background:#111827;color:#fff;border:1px solid #334155;border-radius:999px;padding:10px 16px;font-size:13px;font-weight:800;opacity:0;pointer-events:none;transition:.2s ease;box-shadow:0 14px 36px rgba(0,0,0,.28)}.jn-connection-toast.show{opacity:1;transform:translate(-50%,0)}.jn-connection-toast.online{background:#166534;border-color:#22c55e}.jn-connection-toast.offline{background:#7f1d1d;border-color:#ef4444}
.jn-mobile-nav{display:none}.jn-quick-add-backdrop,.jn-quick-add-sheet{display:none}.jn-pwa-install-card{overflow:hidden;position:relative}.jn-pwa-install-card:after{content:'J';position:absolute;right:22px;top:50%;transform:translateY(-50%);font-size:96px;font-weight:900;color:rgba(79,70,229,.08);pointer-events:none}.jn-pwa-actions{display:flex;gap:10px;flex-wrap:wrap;position:relative;z-index:1}.jn-pwa-state{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:13px;margin-top:12px}.jn-pwa-dot{width:9px;height:9px;border-radius:50%;background:var(--warning)}html[data-pwa-mode=standalone] .jn-pwa-dot{background:var(--success)}
@media(max-width:900px){
 body.app-body{padding-bottom:calc(var(--mobile-nav-h) + env(safe-area-inset-bottom))!important}
 .app-footer{padding-bottom:18px!important}
 .jn-mobile-nav{position:fixed;display:grid;grid-template-columns:repeat(5,1fr);left:0;right:0;bottom:0;z-index:80;height:calc(var(--mobile-nav-h) + env(safe-area-inset-bottom));padding:7px 8px calc(7px + env(safe-area-inset-bottom));background:rgba(255,255,255,.94);backdrop-filter:blur(18px);border-top:1px solid var(--line);box-shadow:0 -12px 32px rgba(15,23,42,.10)}
 html[data-theme=dark] .jn-mobile-nav{background:rgba(11,16,32,.95)}
 .jn-mobile-link,.jn-mobile-add{appearance:none;border:0;background:transparent;color:var(--muted);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:0;border-radius:14px;font:inherit;cursor:pointer}.jn-mobile-link .ico{font-size:20px;line-height:1}.jn-mobile-link small{font-size:10px;font-weight:800;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.jn-mobile-link.active{color:var(--primary);background:rgba(79,70,229,.09)}
 .jn-mobile-add{width:54px;height:54px;align-self:center;justify-self:center;margin-top:-23px;border-radius:19px;background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;font-size:32px;line-height:1;box-shadow:0 14px 30px rgba(79,70,229,.36);border:4px solid var(--bg)}
 .jn-quick-add-backdrop{display:block;position:fixed;inset:0;z-index:91;background:rgba(2,6,23,.62);backdrop-filter:blur(3px)}
 .jn-quick-add-sheet{display:block;position:fixed;left:10px;right:10px;bottom:calc(var(--mobile-nav-h) + 8px + env(safe-area-inset-bottom));z-index:92;background:var(--card);border:1px solid var(--line);border-radius:26px;padding:18px;box-shadow:0 28px 70px rgba(0,0,0,.32);animation:jn-sheet-in .18s ease-out}.jn-quick-add-sheet h2{margin:0 0 4px;font-size:20px}.jn-sheet-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.jn-sheet-close{border:1px solid var(--line);background:var(--bg-soft);color:var(--text);width:38px;height:38px;border-radius:13px;font-size:22px}.jn-quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.jn-quick-card{display:flex;align-items:center;gap:11px;padding:14px;border:1px solid var(--line);background:var(--bg-soft);border-radius:18px;color:var(--text);font-weight:850}.jn-quick-card span{font-size:24px}.jn-quick-card small{display:block;color:var(--muted);font-size:11px;font-weight:600}
 @keyframes jn-sheet-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
 html[data-pwa-mode=standalone] .app-topbar{padding-top:env(safe-area-inset-top);height:calc(66px + env(safe-area-inset-top))!important}
}
@media(min-width:901px){.jn-mobile-nav,.jn-quick-add-backdrop,.jn-quick-add-sheet{display:none!important}}
