/* Minhas Cifras - CSS local otimizado para mobile. Substitui Tailwind CDN e Google Fonts. */
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;-webkit-tap-highlight-color:transparent;background:#f8fafc;color:#1e293b}button,input,select,textarea{font:inherit}button{appearance:none;border:0;background:transparent;padding:0;color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}svg{display:block;flex-shrink:0}img{display:block}form{margin:0}input,select{min-width:0}::placeholder{color:#94a3b8}
.hidden{display:none!important}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.-inset-1{top:-.25rem;right:-.25rem;bottom:-.25rem;left:-.25rem}.top-0{top:0}.top-3{top:.75rem}.left-3\.5{left:.875rem}.bottom-5{bottom:1.25rem}.right-5{right:1.25rem}.z-30{z-index:30}.z-50{z-index:50}
.flex{display:flex}.inline-flex{display:inline-flex}.inline-block{display:inline-block}.flex-col{flex-direction:column}.flex-1{flex:1 1 0%}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}
.w-full{width:100%}.w-20{width:5rem}.h-20{height:5rem}.h-\[80vh\]{height:80vh}.min-h-screen{min-height:100vh}.max-w-xs{max-width:20rem}.max-w-sm{max-width:24rem}.max-w-md{max-width:28rem}.max-w-full{max-width:100%}.max-w-\[160px\]{max-width:160px}
.mx-auto{margin-left:auto;margin-right:auto}.my-auto{margin-top:auto;margin-bottom:auto}.mt-3{margin-top:.75rem}.mt-auto{margin-top:auto}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.p-0{padding:0}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-3\.5{padding:.875rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.pl-10{padding-left:2.5rem}.pr-4{padding-right:1rem}.pb-3{padding-bottom:.75rem}.pb-20{padding-bottom:5rem}.space-y-1>:not([hidden])~:not([hidden]){margin-top:.25rem}.space-y-2>:not([hidden])~:not([hidden]){margin-top:.5rem}.space-y-3>:not([hidden])~:not([hidden]){margin-top:.75rem}.space-y-4>:not([hidden])~:not([hidden]){margin-top:1rem}.space-y-6>:not([hidden])~:not([hidden]){margin-top:1.5rem}
.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.cursor-pointer{cursor:pointer}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.origin-top{transform-origin:top}.transform{transform:translateZ(0)}
.text-left{text-align:left}.text-center{text-align:center}.text-xs{font-size:.75rem;line-height:1rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\[10px\]{font-size:10px;line-height:1.25}.text-\[11px\]{font-size:11px;line-height:1.35}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.italic{font-style:italic}.uppercase{text-transform:uppercase}.tracking-tight{letter-spacing:-.025em}.tracking-wider{letter-spacing:.05em}.leading-tight{line-height:1.25}.leading-relaxed{line-height:1.625}
.text-white{color:#fff}.text-slate-100{color:#f1f5f9}.text-slate-200{color:#e2e8f0}.text-slate-400{color:#94a3b8}.text-slate-500{color:#64748b}.text-slate-600{color:#475569}.text-slate-700{color:#334155}.text-slate-800{color:#1e293b}.text-slate-900{color:#0f172a}.text-blue-400{color:#60a5fa}.text-blue-500{color:#3b82f6}.text-blue-600{color:#2563eb}.text-blue-700{color:#1d4ed8}.text-amber-600{color:#d97706}.text-amber-700{color:#b45309}.text-purple-700{color:#7e22ce}.text-rose-700{color:#be123c}.text-violet-700{color:#6d28d9}.text-cyan-700{color:#0e7490}.text-red-500{color:#ef4444}
.bg-white{background-color:#fff}.bg-white\/90{background-color:rgba(255,255,255,.9)}.bg-black\/60{background-color:rgba(0,0,0,.6)}.bg-slate-50{background-color:#f8fafc}.bg-slate-50\/50{background-color:rgba(248,250,252,.5)}.bg-slate-50\/60{background-color:rgba(248,250,252,.6)}.bg-slate-100{background-color:#f1f5f9}.bg-slate-800{background-color:#1e293b}.bg-slate-900{background-color:#0f172a}.bg-slate-950{background-color:#020617}.bg-blue-50{background-color:#eff6ff}.bg-blue-500\/20{background-color:rgba(59,130,246,.2)}.bg-blue-600{background-color:#2563eb}.bg-amber-50{background-color:#fffbeb}.bg-purple-50{background-color:#faf5ff}.bg-rose-50{background-color:#fff1f2}.bg-violet-50{background-color:#f5f3ff}.bg-cyan-50{background-color:#ecfeff}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-from,#60a5fa),var(--tw-gradient-to,#6366f1))}.from-blue-400{--tw-gradient-from:#60a5fa}.to-indigo-500{--tw-gradient-to:#6366f1}
.border{border-width:1px;border-style:solid;border-color:#e2e8f0}.border-2{border-width:2px;border-style:solid;border-color:#e2e8f0}.border-t{border-top:1px solid #e2e8f0}.border-b{border-bottom:1px solid #e2e8f0}.border-b-2{border-bottom-width:2px;border-bottom-style:solid}.border-none{border-style:none}.border-dashed{border-style:dashed}.border-transparent{border-color:transparent}.border-slate-50{border-color:#f8fafc}.border-slate-100{border-color:#f1f5f9}.border-slate-200{border-color:#e2e8f0}.border-slate-800{border-color:#1e293b}.border-blue-100{border-color:#dbeafe}.border-blue-100\/40{border-color:rgba(219,234,254,.4)}.border-blue-500\/30{border-color:rgba(59,130,246,.3)}.border-blue-600{border-color:#2563eb}.border-amber-100{border-color:#fef3c7}.border-purple-100{border-color:#f3e8ff}.border-rose-100{border-color:#ffe4e6}.border-violet-100{border-color:#ede9fe}.border-cyan-100{border-color:#cffafe}
.rounded-md{border-radius:.375rem}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.rounded-2xl{border-radius:1rem}.rounded-t-3xl{border-top-left-radius:1.5rem;border-top-right-radius:1.5rem}.rounded-full{border-radius:9999px}.shadow-sm{box-shadow:0 1px 2px rgba(15,23,42,.06)}.shadow-md{box-shadow:0 4px 8px rgba(15,23,42,.08)}.shadow-lg{box-shadow:0 10px 20px rgba(15,23,42,.12)}.shadow-xl{box-shadow:0 20px 35px rgba(15,23,42,.12)}.shadow-2xl{box-shadow:0 24px 60px rgba(0,0,0,.28)}.shadow-inner{box-shadow:inset 0 2px 4px rgba(15,23,42,.05)}.shadow-blue-500\/10{box-shadow:0 10px 20px rgba(59,130,246,.10)}
.opacity-0{opacity:0}.opacity-20{opacity:.2}.blur-md{filter:blur(12px)}.backdrop-blur-md{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.backdrop-blur-sm{backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
.transition-all{transition-property:all;transition-duration:.18s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-duration:.18s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-transform{transition-property:transform;transition-duration:.18s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-200{transition-duration:.2s}.duration-1000{transition-duration:1s}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}
.hover\:bg-blue-700:hover{background-color:#1d4ed8}.hover\:bg-red-50:hover{background-color:#fef2f2}.hover\:bg-slate-50:hover{background-color:#f8fafc}.hover\:bg-slate-100:hover{background-color:#f1f5f9}.hover\:bg-slate-200\/80:hover{background-color:rgba(226,232,240,.8)}.hover\:bg-slate-800:hover{background-color:#1e293b}.hover\:bg-white:hover{background-color:#fff}.hover\:border-blue-500\/50:hover{border-color:rgba(59,130,246,.5)}.hover\:border-slate-100:hover{border-color:#f1f5f9}.hover\:text-red-500:hover{color:#ef4444}.hover\:text-slate-600:hover{color:#475569}.hover\:text-white:hover{color:#fff}.group:hover .group-hover\:opacity-45{opacity:.45}.active\:scale-95:active{transform:scale(.95)}.active\:scale-98:active{transform:scale(.98)}.focus\:bg-white:focus{background-color:#fff}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{box-shadow:0 0 0 2px rgba(59,130,246,.2)}.focus\:ring-blue-500\/20:focus{box-shadow:0 0 0 2px rgba(59,130,246,.2)}
@keyframes slide-up{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{from{opacity:0;transform:scale(.985)}to{opacity:1;transform:scale(1)}}.animate-slide-up{animation:slide-up .18s ease-out both}.sm\:animate-fade-in{animation:none}
#viewerContainer{overscroll-behavior:contain}#viewerImage{height:auto}#viewerPdf{background:#fff}.tonality-card,.song-item,.alphabetical-song-item{touch-action:manipulation}input[type="file"]{font-size:0}
@media (min-width:640px){.sm\:items-center{align-items:center}.sm\:p-4{padding:1rem}.sm\:rounded-2xl{border-radius:1rem}.sm\:animate-fade-in{animation:fade-in .18s ease-out both}}

.pin-viewer-button.is-pinned{color:#facc15;background:#1e293b}.pin-viewer-button.is-pinned svg{fill:currentColor}.selected-song-item{touch-action:manipulation}#selectedCount{min-width:1.25rem;text-align:center}.justify-start{justify-content:flex-start}
