*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{color:#1a1a1a;background:#f7f4ef;min-height:100vh;font-family:DM Sans,sans-serif}header{z-index:100;background:#191e3b;border-bottom:2px solid #f5c518;justify-content:space-between;align-items:center;padding:6px 32px;display:flex;position:sticky;top:0}.logo{color:#f5c518;font-family:Playfair Display,serif;font-size:24px;font-weight:900;text-decoration:none}.logo>span:first-child{color:#fff}.logo-subtitulo{letter-spacing:.1px;font-family:DM Sans,sans-serif;font-size:19px;font-weight:400;color:#aaa!important}@media (width<=600px){.logo-subtitulo{display:none}}.header-right{align-items:center;gap:12px;display:flex}.header-user{color:#aaa;font-size:14px}.btn-login{color:#1a1a1a;cursor:pointer;cursor:pointer;background:#f5c518;border:none;border-radius:6px;padding:8px 18px;font-family:DM Sans,sans-serif;font-size:14px;font-weight:500;transition:background .15s}.btn-login:hover{background:#e6b800}.btn-sair{color:#aaa;cursor:pointer;background:0 0;border:1px solid #444;border-radius:6px;padding:7px 14px;font-family:DM Sans,sans-serif;font-size:13px;transition:border-color .15s,color .15s}.btn-sair:hover{color:#f5c518;border-color:#f5c518}main{max-width:1100px;margin:0 auto;padding:40px 24px}.page-title{margin-bottom:8px;font-family:Playfair Display,serif;font-size:28px;font-weight:700}.section-label{color:#888;text-transform:uppercase;letter-spacing:1.5px;margin-bottom:20px;font-size:12px;font-weight:500}.card-musical{text-align:center;cursor:pointer;background:#fff;border:1px solid #e8e8e4;border-radius:12px;flex-direction:column;align-items:center;padding:16px 20px;transition:border-color .15s,transform .1s,box-shadow .15s;display:flex;transform:translateY(-4px)scale(1.02);box-shadow:0 12px 28px #0000001f}.card-musical:hover{border-color:#f5c518;transform:translateY(-1px);box-shadow:0 6px 20px #0000001a}.card-poster{color:#f5c518;text-align:center;background:0 0;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:70px;height:100px;padding:4px;font-family:Playfair Display,serif;font-size:9px;line-height:1.3;display:flex}.card-info{flex:1}.card-titulo{margin-bottom:4px;font-family:Playfair Display,serif;font-size:18px;font-weight:700}.card-meta{color:#888;margin-bottom:8px;font-size:13px}.rating-badge{color:#f5c518;background:#191e3b;border-radius:5px;align-items:center;gap:5px;padding:3px 10px;font-size:13px;font-weight:500;display:inline-flex}.rating-votos{color:#666;opacity:.8;font-size:13px;font-weight:400}.musical-header{align-items:flex-start;gap:24px;margin-bottom:24px;display:flex}@media (width<=600px){.musical-header{flex-direction:column;align-items:center}.musical-poster{width:200px!important;height:280px!important}.musical-titulo{text-align:center;font-size:24px!important}.musical-meta{text-align:center}.rating-grande{justify-content:center;display:flex}}.musical-poster{color:#f5c518;text-align:center;background:0 0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:225px;height:305px;padding:8px;font-family:Playfair Display,serif;font-size:11px;line-height:1.3;display:flex}.musical-titulo{margin-bottom:8px;font-family:Playfair Display,serif;font-size:32px;font-weight:900;line-height:1.1}.musical-meta{color:#888;margin-bottom:12px;font-size:14px}.rating-grande{color:#f5c518;background:#191e3b;border-radius:8px;align-items:baseline;gap:8px;padding:8px 16px;font-size:22px;font-weight:700;display:inline-flex}.rating-grande-label{color:#888;font-size:12px;font-weight:400}.divider{border:none;border-top:1px solid #e8e8e4;margin:24px 0}.sinopse{color:#444;margin-bottom:24px;font-size:15px;line-height:1.75}.avaliacao-titulo{margin-bottom:10px;font-size:14px;font-weight:500}.estrelas-container{cursor:pointer;gap:8px;margin-bottom:8px;font-size:36px;display:flex}.estrela{color:#ddd;-webkit-user-select:none;user-select:none;transition:color .1s}.estrela.ativa{color:#f5c518}.voto-registrado{color:#444;background:#fffbe6;border-left:3px solid #f5c518;border-radius:8px;margin-bottom:8px;padding:10px 16px;font-size:15px}.comentarios-titulo{margin-bottom:16px;font-family:Playfair Display,serif;font-size:20px;font-weight:700}.comentario-form textarea{resize:vertical;border:1px solid #e8e8e4;border-radius:8px;width:100%;height:90px;margin-bottom:10px;padding:12px;font-family:DM Sans,sans-serif;font-size:14px}.comentario-form textarea:focus{border-color:#f5c518;outline:none}.btn-comentar{color:#f5c518;cursor:pointer;background:#1a1a1a;border:none;border-radius:6px;padding:10px 20px;font-family:DM Sans,sans-serif;font-size:14px;font-weight:500}.btn-comentar:hover{background:#333}.comentario-item{border-top:1px solid #e8e8e4;padding:16px 0}.comentario-nome{margin-bottom:4px;font-size:14px;font-weight:500}.comentario-texto{color:#555;font-size:14px;line-height:1.65}.login-aviso{color:#888;font-size:14px;font-style:italic}.voltar{color:#888;cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;margin-bottom:24px;font-family:DM Sans,sans-serif;font-size:14px;display:inline-flex}.voltar:hover{color:#1a1a1a}@media (width<=600px){.grid-musicais{grid-template-columns:1fr!important}.header-user-nome,.btn-login-texto-completo{display:none}.btn-login-texto-curto{display:inline}}@media (width>=601px){.btn-login-texto-curto{display:none}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.home-layout{align-items:flex-start;gap:40px;display:flex}.home-conteudo{flex:1;min-width:0}.sidebar-comentarios{flex-shrink:0;width:260px;position:sticky;top:88px}@media (width<=768px){.sidebar-comentarios{display:none}}#nprogress .bar{background:#f5c518!important;height:3px!important}#nprogress{pointer-events:none}#nprogress .bar{z-index:1031;background:#29d;width:100%;height:2px;position:fixed;top:0;left:0}#nprogress .peg{opacity:1;width:100px;height:100%;display:block;position:absolute;right:0;transform:rotate(3deg)translateY(-4px);box-shadow:0 0 10px #29d,0 0 5px #29d}#nprogress .spinner{z-index:1031;display:block;position:fixed;top:15px;right:15px}#nprogress .spinner-icon{box-sizing:border-box;border:2px solid #0000;border-color:#29d #0000 #0000 #29d;border-radius:50%;width:18px;height:18px;animation:.4s linear infinite nprogress-spinner}.nprogress-custom-parent{position:relative;overflow:hidden}.nprogress-custom-parent #nprogress .spinner,.nprogress-custom-parent #nprogress .bar{position:absolute}@-webkit-keyframes nprogress-spinner{0%{-webkit-transform:rotate(0)}to{-webkit-transform:rotate(360deg)}}@keyframes nprogress-spinner{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
